mirror of
https://codeberg.org/Toasterson/ips.git
synced 2026-04-10 21:30:41 +00:00
22 lines
762 B
Text
22 lines
762 B
Text
For obvious compatibility reasons, the over-the-wire protocol needs to be
|
|
versioned. Since we're using HTTP, it makes sense to simply version the
|
|
URLs used.
|
|
|
|
The scheme is pretty simple:
|
|
|
|
http://host:port/operation/version(/extra)?
|
|
|
|
where "version" is a simple integer.
|
|
|
|
Open questions:
|
|
|
|
- Are there operations where we don't want to require a version?
|
|
|
|
- Is there a use for a "300 Multiple Choices" HTTP return code?
|
|
|
|
- If we always try the client-optimal version first and then back off
|
|
linearly, we'll want to cache the version that succeeded so we don't
|
|
spend all of our time trying versions that don't exist.
|
|
|
|
- Alternatively, we can call "versions" to find out what versions the
|
|
server supports for each operation, and cache that.
|