web服务器上的akka​​-http getFromFile在刷新

时间:2018-02-05 17:36:21

标签: http-headers akka akka-http if-modified-since

我正在为基于React的单页面应用程序的Web服务器使用akka-http,并且在我刷新网站时遇到问题。我得到了404请求的资源(只是index.html)。执行“超级刷新”(ctrl + refresh)工作正常,所有内容都按预期加载。但是当我进行正常刷新,并且if-modified-since标头包含在请求标头中时,我注意到服务器返回了404响应。

~ {
  getFromFile(s"$STATIC_CONTENT_ROOT/index.html")
}

为了确保这确实是问题,我做了一个完整性检查。我更新了代码,将资源文件夹(所有js文件和index.html)中所有文件的修改日期更新为当catch-all / refresh端点被命中时的当前时间,并注意到这修复了刷新问题。但是,“解决方案”仅在本地运行,因为一旦将这些资源部署到实际的开发或生产共享主机,我就没有对这些资源的写入权限。

我现在正在寻找一种解决方案,允许我忽略标题的这一部分或者实际处理它。我已经尝试过使用akka-http的条件(...)指令,但没有运气。

以前有没有人遇到过这个问题?并成功解决了这个问题?

1 个答案:

答案 0 :(得分:1)

我发现getFromFile指令实际上在内部使用conditional指令。可以通过配置RoutingSettings来关闭此功能。