处理选项方法的最简单方法



我正在为我的Yesod JSON服务器编写一个.js的客户端。在检查标头流量时,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,但据我所知,管理操作系统环境。全局更改响应标头最直接的位置在哪里?

可能最简单的事情是除了 logWare 之外添加另一个中间件。

最新更新