Escaped characters in URLs with hashes working for deno fileserver but not Python #45
Labels
bug
Something isn't working
Pluto.jl frontend
Requires integration with/changes to Pluto's frontend (JS) codebase
Firstly, thanks for producing this really cool software! I'm planning to use Pluto (especially with precomputed static outputs) as much as possible now :)
I was just trying the precomputed static html branch (though I would guess this behaviour is unrelated to the pre-computation), and found that sometimes I would get 404 error when trying to load the bond connections file, and the dynamic content would fail.
Specifically, I generated a static HTML output using
on the basic3.jl test file, then if I ran
the localhost:8000/basic3.html page would work as expected, whereas if instead I tried Python's built-in server
then the Javascript console would show a 404 error trying to load bondconnections and the interactivity would not work anymore.
Javascript prints out the same notebook hash in both cases,
7uehaeBoJorFiesT4uKI7Rl3bFJcsQwdILATmeaacfs=
, and both links requesthttp://localhost:8000/bondconnections/7uehaeBoJorFiesT4uKI7Rl3bFJcsQwdILATmeaacfs%3D
however Python's server will only load this file if the URL used is
http://localhost:8000/bondconnections/7uehaeBoJorFiesT4uKI7Rl3bFJcsQwdILATmeaacfs%253D
The difference appears to be a different escaping mechanism for the URL (Python wanting the escaped characters to have '25' after each '%').
Having the Python server supported is not important, I was simply hoping to put the precomputed html files onto Github Pages and I spotted this problem there. Using Python locally was just a convenient way to reproduce this error. I'm not a web developer, so I hope this isn't simply some trivial error caused by my ignorance! Thanks.
The text was updated successfully, but these errors were encountered: