我正在 angular.js 中为我的 Yesod JSON 服务器编写一个客户端。在检查标头流量时,Chrome 似乎正在发送一个 OPTIONS 方法,我的处理程序拒绝了该方法。调查表明我应该发回这样的东西:
Access-Control-Allow-Methods: GET, POST, OPTIONS
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: http://source.com
Access-Control-Allow-Headers: Content-Type, *
看着脚手架,我发现它makeApplication
开始了我想要遵循的路径:
makeApplication :: AppConfig DefaultEnv Extra -> IO Application
makeApplication conf = do
foundation <- makeFoundation conf
app <- toWaiAppPlain foundation
return $ logWare app
where
logWare = if development then logStdoutDev
else logStdout
最初,我认为我需要修改conf
,但据我所知,管理操作系统环境。全局更改响应标头最直接的地方在哪里?