mirror of
https://github.com/nostr-protocol/nips.git
synced 2024-11-09 22:09:06 -05:00
nip11: "virtual_paths"
This commit is contained in:
parent
6071f3489e
commit
981ca17aea
24
11.md
24
11.md
|
@ -60,6 +60,30 @@ The relay MAY choose to publish its software version as a string attribute. The
|
||||||
Extra Fields
|
Extra Fields
|
||||||
------------
|
------------
|
||||||
|
|
||||||
|
### Virtual Relays
|
||||||
|
|
||||||
|
Some relays want to expose "virtual" addresses to the same underlying dataset or other types of weird functionality. A basic example is a relay that may serve all notes under its `/` path, but only Italian notes under its `/it` path and only Japanese notes under its `/jp` path. In this case clients may use the virtual (`/jp` etc) paths when browsing the relay, for example; but in other situations, like when selecting relays for building a feed for some specific profile, clients should just want to connect to `/`.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"virtual_path": {
|
||||||
|
"is": true,
|
||||||
|
"canonical": "/",
|
||||||
|
"alternatives": [
|
||||||
|
{"path": "/jp", "description": "only stuff in Japanese"},
|
||||||
|
{"path": "/it", "description": "only stuff in Italian"},
|
||||||
|
{"path": "/fr", "description": "whatever"},
|
||||||
|
{"path": "/pt", "description": "blergh"}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
...
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
- `is`: this is `true` when the current path queried is a virtual path.
|
||||||
|
- `canonical`: this is the path that should be used when the client doesn't care about the virtual.
|
||||||
|
- `alternatives`: optionally, if a relay wants to announce its virtual paths, this may be useful sometimes.
|
||||||
|
|
||||||
### Server Limitations
|
### Server Limitations
|
||||||
|
|
||||||
These are limitations imposed by the relay on clients. Your client
|
These are limitations imposed by the relay on clients. Your client
|
||||||
|
|
Loading…
Reference in New Issue
Block a user