CREAZIONE DI UN PULSANTE DI CONDIVISIONE APERTO PER IL SOCIAL WEB DISTRIBUITO
Pensando a un pulsante “condividi con Mastodon” che chiunque potrebbe incorporare in un sito web. È un problema più difficile di un pulsante “condividi con Twitter”, perché non esiste un host centrale e l’ideale sarebbe evitare di creare una posizione centrale per gestire queste richieste. (Dopo tutto, Mastodon è decentralizzato.)
Come bonus, penso che funzionerebbe per indieweb o qualsiasi altra piattaforma social decentralizzata. Forse qualsiasi piattaforma sociale?
Tutto questo sarebbe più semplice se gli intenti web fossero rimasti bloccati. Tuttavia, ecco come potrebbe funzionare. Chiamiamolo “microshare”, per stare accanto a micropub :
- L’utente fa clic sul pulsante sulla pagina.
- JS sulla pagina rileva se lo
web+social
schema URI è stato registrato (vorrei che fosse più semplice, ma puoi farlo effettuando una richiesta asincrona e aspettando che abbia esito positivo o negativo). - Se lo è, fantastico! Basta inoltrare l’utente a quell’URI.
- In caso contrario, chiedi all’utente qual è il dominio del suo profilo social.
- JS (o un processo del server back-end) va a recuperare l’URL di base e cerca un
microshare
metatag o un’intestazione HTTP del modulo . (Mastodon ecc. dovrebbe supportare questo endpoint e la scoperta dello stesso.)Link: <https://example.com/microshare>;;
rel="microshare"
- Se l’endpoint esiste, il browser apre una nuova scheda e inoltra l’utente a tale URI con parametri aggiuntivi texte urlstringa URL popolati rispettivamente con il nome e l’URL della pagina condivisa.
- Questa nuova pagina contiene un pulsante per registrare l’URI come gestore dello
web+social
schema URI. Può anche richiedere all’utente di accedere o, se ha già effettuato l’accesso, condividere su quella piattaforma social, con il testo e l’URL precompilati nel modulo.
Ci sono alcuni problemi qui su cui vorrei ripetere: vorrei che la gestione e il rilevamento dello schema URI fosse più facile in un browser, per esempio. In secondo luogo, esiste un potenziale attacco di phishing in cui un sito Web dannoso potrebbe mostrare una pagina di accesso falsa e raccogliere le credenziali di accesso di qualcuno.
Tuttavia, ciò che mi piace è che utilizza le funzionalità esistenti del Web e non impone un gestore di dominio centrale (o anche un dominio come shim). Sebbene sembri più contorto di un collegamento href standard (e lo è), può essere ottenuto sui siti Web dei publisher con poche righe di JavaScript.
Sono sicuro di essermi perso qualcosa di importante, ma volevo dare il via a questo come primo passo. Fatemi sapere cosa ne pensate!
Il post originale di @ben può essere letto qui