Как получить входящий или исходящий URL-адрес
URL-адрес - это то, что говорит сервер-исполнитель.Таким образом, он отличается для каждого ActivityPub сервера.
Входящие и исходящие URL-адреса для субъекта определены в документе JSON-LD для субъекта:
{
"@context": ["https://www.w3.org/ns/activitystreams",
{"@language": "ja"}],
"type": "Person",
"id": "https://kenzoishii.example.com/",
// Right here!
"inbox": "https://kenzoishii.example.com/inbox.json",
"outbox": "https://kenzoishii.example.com/feed.json",
...
}
Это также означает, что входящие и исходящие могут быть специфичными для актера , а не только для конкретного сервера.
Как получить актера JSON
Некоторые сайты ActivityPub , такие как Mastodon , используют Webfinger для стандартизации URL, который можно использовать для получения URL-адреса.JSON-LD документа актера:
/.well-known/webfinger?resource=acct:foo@example.org
В этом случае, если вы хотите узнать входящие сообщения для flaque@mastodon.social
, вы сначала запросите веб-палец:
GET https://mastodon.technology/.well-known/webfinger?resource=acct:flaque@mastodon.technology
Это даст вам объект JSON, подобный этому:
{
subject: "acct:Flaque@mastodon.technology",
links: [
{
rel: "self",
type: "application/activity+json",
href: "https://mastodon.technology/users/Flaque"
}
]
}
С этим href: https://mastodon.technology/users/Flaque
вы можете получить представление JSON с помощью:
https://mastodon.technology/users/Flaque.json
(Обратите внимание на .json
!)
Это даст вам полный объект актера, который будет включать inbox
и outbox
:
{
"inbox": "https://mastodon.technology/users/Flaque/inbox",
"outbox": "https://mastodon.technology/users/Flaque/outbox",
...
}