Open jungleBadger opened 4 years ago
I have a suspicion that this may have the same root cause as #145. The reason I'm thinking that is path.resolve()
removes trailing slashes, whereas path.join()
does not. The path joining was removed in https://github.com/hapijs/inert/commit/4514a5e367aeb03be94fc04294c5b30e509eebef.
Does anyone want to open a PR to fix the issue?
Support plan
Context
"@hapi/hapi": "^19.1.1"
,"@hapi/inert": "^6.0.1"
What are you trying to achieve or the steps to reproduce?
I'm defining a custom endpoint named
/docs/js
which would serve any file in the existent/docs/js
directory located at the root path of my project, this is the output of my JSDoc automation routine, so an index.html is served from there and inner CSS/JS should be loaded upon the rendering of that index.Similarly, I want to do the same to
swagger
andtest coverage
, so I would just replicate the same pattern.Everything works fine, except the
redirectToSlash
functionality, I did some digging through the plugin source code and if I remove this snippet demonstrated below, the functionality works as expected.What was the result you got?
localhost:port/docs/js
I got the index.html and extra css/js can't be loaded.localhost:port/docs/js/
I got the index.html and all extra css/js works smoothly.localhost:port/docs/js
the requests are not redirected tolocalhost:port/docs/js/
What result did you expect?
localhost:port/docs/js
and be redirected tolocalhost:port/docs/js/
since theredirectToSlash
option is set to true.PS: I validated that:
/
at the end, it works finedirectory.js
code and if I remove/comment the snippet mentioned above, the slash is appended to the URL as expected.stripTrailingSlash
configuration, the defaults are in place/docs/js/
, the request in the browser (and also using curl) is not being redirected as expected, as demonstrated below.