我有一个基于Play框架的后端,需要提供给将在不同域上托管的前端。
例如,后端可能位于backend.example.com,而前端可能位于myapp.com,然后会向backend.example.com发出javascript请求
我认为这需要通过播放发送一个访问源头。
任何想法如何/在何处配置,以便全局发送所有请求?
答案 0 :(得分:3)
您需要使用application.conf文件打开CORS:
play.filters.enabled += "play.filters.cors.CORSFilter"
然后你可以配置这样的细节(也在application.conf上):
#CORS Properties
cors.enabled=true
cors.allowed_headers=["Accept", "Origin", "Content-type", "Authorization", "X-Auth-Token", "X-HTTP-Method-Override", "X-Json", "X-Prototype-Version", "X-Requested-With", "x-auth-token", "x-auth-id"]
cors.allowed_methods=["GET", "POST", "PUT", "DELETE", "OPTIONS"]
cors.allowed_credentials=true
cors.allowed_origin="*"
这里有更多详细信息的文档:https://www.playframework.com/documentation/2.6.x/CorsFilter