Sitios web alojados en Bluesky
(danielmangum.com)Bluesky y el protocolo AT
-
Introducción a Bluesky y al protocolo AT
- Bluesky ofrece la capacidad de alojar sitios web a través de servidores de datos personales (PDS).
- El protocolo AT define la API utilizada para subir contenido de sitios web, y el PDS la implementa.
- Bluesky proporciona un punto de entrada para acceder al PDS a través del dominio
bsky.social.
-
Tipos de contenido: registros y blobs
- La mayoría de las aplicaciones sociales tienen dos tipos principales de contenido: registros y blobs.
- Los registros son las entidades principales que crean los usuarios, y tienen estructura y metadatos.
- Los blobs son datos grandes y no estructurados, por lo general recursos multimedia, y se referencian mediante registros.
-
Carga y gestión de blobs
- Los blobs deben subirse al PDS antes de que un registro pueda referenciarlos.
- Los blobs subidos se almacenan en un espacio temporal y no se puede acceder a ellos hasta que sean referenciados.
- Al crear un registro, el servidor verifica los blobs referenciados y, si todo sale bien, los hace accesibles públicamente.
-
Creación de datos y autenticación
- Para realizar operaciones de creación de datos en el PDS se necesita un token de acceso para autenticarse.
- Se puede usar el método XRPC
com.atproto.server.createSessionpara intercambiar credenciales de usuario por un token.
-
Referencia de blobs y creación de registros
- Los blobs pueden referenciarse en un registro
app.bsky.feed.poste incluirse como imágenes. - La validez de la referencia del blob se verifica mediante validación del tipo MIME.
- Los blobs pueden referenciarse en un registro
-
Consideraciones de seguridad
- Servir archivos subidos por usuarios desde un servidor web puede generar problemas de seguridad.
- La seguridad del endpoint
getBlobdebe reforzarse mediante una política de seguridad de contenido (CSP).
-
Entrega de imágenes mediante CDN
- Los blobs de imágenes en la aplicación Bluesky se sirven a través de una CDN, no desde una instancia de PDS.
- La aplicación debe saber cómo entregar imágenes a través de la CDN.
-
Ventajas del código abierto
- La implementación de PDS de Bluesky está disponible como código abierto, por lo que se puede ver cómo se definen las referencias a blobs.
- Para admitir nuevos lexicones, el PDS debe poder procesar también lexicones que no conoce.
-
Capacidad de expansión de los lexicones
- El tipo
app.bsky.feed.postincluye una unión para embeds válidos y, de forma predeterminada, está abierto. - Se pueden agregar nuevos tipos de embeds, lo que permite “microextensiones” que amplían los casos de uso existentes.
- El tipo
Aún no hay comentarios.