1

选项http://localhost:9000/api/chat/ 404(未找到) XMLHttpRequest 无法加载http://localhost:9000/api/chat/。预检响应具有无效的 HTTP 状态代码 404

4

1 回答 1

3

https://www.playframework.com/documentation/2.5.x/CorsFilter有关于启用 CORS for Play 的详细信息(这是 Lagom 的基础)。要处理OPTIONS您可能需要执行以下操作:

.withAutoAcl(true)
.withServiceAcls(
  ServiceAcl.methodAndPath(Method.OPTIONS, "/foo")
)

https://groups.google.com/forum/#!msg/lagom-framework/dtYN_1Ds4SQ/gT-BGPuCAQAJ是一个包含更多详细信息的 lagom-framework 列表讨论线程。

https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS#Preflighted_requests解释了为什么您的浏览器开始发送OPTIONS请求。


当前为 Play 提供 CORS 的精确 maven 工件的元数据是这样的:

<metadata>
  <groupId>com.typesafe.play</groupId>
  <artifactId>filters-helpers_2.12</artifactId>
  <versioning>
    <latest>2.6.0-M2</latest>
    <release>2.6.0-M2</release>
    <versions>
      <version>2.6.0-M1</version>
      <version>2.6.0-M2</version>
    </versions>
    <lastUpdated>20170310220437</lastUpdated>
  </versioning>
</metadata>
于 2017-03-22T12:12:42.330 回答