我有一个使用web-server的球拍web服务器,有什么方法可以启用跨域资源共享(CORS)吗?
发布于 2019-01-04 01:00:21
是!
使用响应上的HTTP报头建立CORS策略。在球拍web服务器中,如您所知,HTTP响应值是response结构的实例,通常通过更高级别的函数(如response/xexpr或response/output )构造。确切地说,您想要设置哪些头文件取决于您的应用程序,但这里有一个简单的示例:
(response/output
#:mime-type #"text/javascript"
#:headers (list (header #"Access-Control-Allow-Origin" #"*"))
(λ (out)
(write-bytes #"console.log('Hi, world!')\n" out)))在实际的web应用程序中,您可能希望生成多个具有相同标头的响应。我通常围绕response/output、response/xexpr等创建一些包装器函数,以添加特定于我的应用程序的逻辑。如果您提供的是一组需要CORS标头的静态文件,则可能需要在web-server/dispatchers/dispatch-files模块上构建。
https://stackoverflow.com/questions/53907505
复制相似问题