如何将 Access-Control-Allow-Origin headers 添加到 yaws 文件?
How to add Access-Control-Allow-Origin headers to yaws file?
我使用 AJAX 从另一个 port/domain 向 YAWS 服务器发送 post 请求,但是 javascript returns 此错误消息:
XMLHttpRequest 无法加载 <a href="http://0.0.0.0:8000/index.yaws" rel="nofollow">http://0.0.0.0:8000/index.yaws</a>. Origin <a href="http://localhost" rel="nofollow">http://localhost</a> Access-Control-Allow-Origin 不允许。
现在我知道我需要在 index.yaws 文件中包含 CORS headers 但我不知道如何在 Erlang
.
如果您只想将 localhost
设置为允许的来源,您可以尝试以下代码。请注意,它表示您当前 return 使用变量 YourJsonString
.
的 JSON 结果
out(Arg) ->
Hdrs = yaws_api:arg_headers(Arg),
case yaws_api:get_header(Hdrs, "Origin") of
"localhost" ->
[{header, {"Access-Control-Allow-Origin", "localhost"}},
{html, YourJsonString}];
_ ->
{html, YourJsonString}
end.
我使用 AJAX 从另一个 port/domain 向 YAWS 服务器发送 post 请求,但是 javascript returns 此错误消息:
XMLHttpRequest 无法加载 <a href="http://0.0.0.0:8000/index.yaws" rel="nofollow">http://0.0.0.0:8000/index.yaws</a>. Origin <a href="http://localhost" rel="nofollow">http://localhost</a> Access-Control-Allow-Origin 不允许。
现在我知道我需要在 index.yaws 文件中包含 CORS headers 但我不知道如何在 Erlang
.
如果您只想将 localhost
设置为允许的来源,您可以尝试以下代码。请注意,它表示您当前 return 使用变量 YourJsonString
.
out(Arg) ->
Hdrs = yaws_api:arg_headers(Arg),
case yaws_api:get_header(Hdrs, "Origin") of
"localhost" ->
[{header, {"Access-Control-Allow-Origin", "localhost"}},
{html, YourJsonString}];
_ ->
{html, YourJsonString}
end.