如何配置Brython使其导入模块时不附加v=?参数?
解决Brython导入模块时附加v参数导致404的问题
Brython默认会给模块请求加?v=xxx的缓存戳,用来避免浏览器缓存旧模块文件,但这会让http.server这类静态服务器找不到对应路径,返回404错误。你可以用下面两种方法解决:
方法一:初始化Brython时禁用缓存参数
在调用brython()初始化函数的时候,传个cache=False参数,就能阻止它附加v参数:
<script type="text/javascript" src="/brython.js"></script> <script type="text/javascript"> brython({ cache: false }); </script>
方法二:通过全局配置关闭缓存戳
如果已经初始化了Brython,也可以在Python代码里修改全局配置来生效:
from browser import window window.__BRYTHON__.no_cache = True
改完之后重启http.server,再访问localhost:8000,看浏览器控制台的网络请求,模块路径里就不会有?v=xxx了,服务器也能正常返回文件。
内容的提问来源于stack exchange,提问作者d33tah
相关产品推荐
相关产品推荐

