我正在构建一个带有角度(主要是ui-router)的前端Web应用程序,并通过节点http-server提供html文件来进行本地开发。我注意到,当我进行更新时,http-server不提供我的静态html文件,这对我的本地开发很有挑战性。
我使用npm install http-server -g
全局安装了http-server,然后转到根项目文件夹并运行http-server
启动它。默认为localhost:8080-两种似乎有效的方法是在每次更新后更改端口号或通过chrome隐身模式。
有没有办法正常使用http-server而无需更改端口或使用隐身模式?
如果相关,我使用的是MBP v.10.11.3
谢谢!
答案 0 :(得分:10)
尝试打开开发人员工具并检查"禁用缓存" Chrome中的“网络”标签中的checkbock。
答案 1 :(得分:7)
似乎有效的两种方法是在每次更新后或通过Chrome隐身模式更改端口号。
您的问题是客户端缓存。隐身模式有自己的数据目录,与您的正常浏览无关。
幸运的是,http-server提供了一种设置缓存控制头的方法。
-c
设置缓存控制max-age标头的缓存时间(以秒为单位),例如-c10持续10秒(默认为'3600')。要禁用缓存,请使用-c-1。
它在此处的文档中列出:https://github.com/indexzero/http-server
您可以在此处阅读HTTP缓存指令:https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-caching?hl=en