generated from cpp-best-practices/gui_starter_template
-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Unify subscription topic handling and fix it for REST (#328)
Do not lose params when subscribing to a topic via REST. Bump cpp-httplib to newest version, as it fixes an encoding error with query parameters encoded in query parameters (SubscriptionContext) when used with redirects. To unify subscription handling (different client/servers were making slightly different assumptions), the following is now implemented (to be revised later): - Service names are a simple alpha-numerical strings, valid are e.g. "someService" and "some.service", but not "Some/Service" not "/SomeService". - The topic can be of the form "topic", "?param1=..¶m2", "topic?param1=..¶m2". - When serialized to a ZMQ topic, i.e. the string-based PUB/SUB topic matching, "service/topic?params" is used. service is *not* optional right now. The params are alphabetically sorted by their keys so that a subscription "?a&b" and "?b&a" match the same notifications. - Valid REST URIs are e.g. "http://localhost:8080/service/topic?a&b" or http://localhost:8080/service?a&b", i.e. the service is a mandatory part of the URI. mds:// and mdp:// URIs are analogous. - On the ZMQ message level, the "serviceName" in above examples would be "service" and the "endpoint" would be "topic?a&b" (here param order is not enforced).
- Loading branch information
1 parent
c19531d
commit 914d77d
Showing
20 changed files
with
362 additions
and
209 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.