Dashboard issue - bug? URL path case sensitivity

Hi all, as raised against uibuilder initially by @annuello (many thanks), there is an issue where, while Node-RED's ExpressJS servers default to being case-insensitive, Socket.IO does not seem to like that at all.

In Dashboard's case, it means that while the http resources are loaded, Socket.IO is not. You end up with a white page.

Seems like an inconsistency that may need at least documenting. It isn't too bad with the default path of /ui/ since most people wouldn't both to type that in mixed or upper case, but a longer or mixed-case path name might cause confusion.

According to the w3c standards, I believe that URL paths SHOULD be case-sensitive. However, due to the way that ExpressJS works, not only is it case-insensitive by default I think, it may also need flags setting in multiple places as indicated in this thread: node.js - nodejs express - case sensitive URL's - Stack Overflow.

I will be adding an option to uibuilder to allow forcing of all of the routes defined by uibuilder to be case sensitive and that may well become the default in a future major release (since it would potentially be a breaking change).

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.