Closed jrandall closed 7 years ago
In the iRobot code, /status
, /config
and /manifest
are hardcoded routes, with no parametrisation/wildcards, that appear first in the routing table. Then there's the catch all for data objects. If a data object is something like /status/my_data_object
that won't be caught by the /status
handler because it's not a match. iRODS can't have data objects at the root, so it will never be the case that /status
is a valid data object.
Oh actually the test I was running before was not quite right - bissell is handling things like /status/file.cram
just fine. I'd still prefer being prefixed with /data
but it isn't currently a problem for bissell.
There are four main endpoints in iRobot:
/status
/config
/manifest
Bissell currently blocks all data object paths starting with
/status
/config
or/manifest
(contrary to the clear documentation on that point) because it is an unusual thing to do and doesn't fit with the "router" syntaxes of any of the web server frameworks I'm familiar with. I'm sure I can fix it, though it would require some special handling and I'd prefer just to have the data objects prefixed with/data
because that is much more clear and I cannot see any drawbacks of that approach.