Pro*_*oGM 2 heroku elixir cors phoenix-framework
我有一个凤凰的应用程序,这应该成为其静态资产(字体,主要是)同时www.domain.com和subdomain.domain.com.
该应用程序托管在heroku上.
如何设置CORS标头?
我找到了这个库,但它似乎不适用于静态资产(我认为).
我试着像这样配置它:
defmodule MyApp.CORS do
use Corsica.Router
resource "/fonts/*", origins: ["http://subdomain.domain.com"]
end
Run Code Online (Sandbox Code Playgroud)
但结果标题是:
cache-control:public
content-length:839
content-type:image/svg+xml
date:Sun, 19 Jun 2016 09:40:01 GMT
etag:3AAE04D
server:Cowboy
Run Code Online (Sandbox Code Playgroud)
您可以使用可选:headers选项Plug.Static并将Access-Control-Allow-Origin标头设置为*.
在lib/my_app/endpoint.ex,在plug Plug.Static调用结束时添加以下参数:
headers: %{"Access-Control-Allow-Origin" => "*"}
Run Code Online (Sandbox Code Playgroud)
您的代码应该类似于:
plug Plug.Static,
at: "/", from: :my_app, gzip: false,
only: ~w(css fonts images js favicon.ico robots.txt),
headers: %{"Access-Control-Allow-Origin" => "*"}
Run Code Online (Sandbox Code Playgroud)
请注意,这不,如果你想允许比1个域更多的工作(一个域或工作*会的工作),因为我相信你必须动态地计算基于请求的值Origin头,对,虽然Plug.Static只允许添加静态标题列表.
| 归档时间: |
|
| 查看次数: |
831 次 |
| 最近记录: |