我有一个仆人应用程序,并针对我的问题查看了以下问题,我得到了 400 的预检请求与 OPTIONS 动词:
https://github.com/haskell-servant/servant/issues/154
https://github.com/haskell-servant/servant-swagger/issues/45
https://github.com/haskell-servant/servant/issues/278
以及为它创建的包 https://hackage.haskell.org/package/servant-options
发出以下请求时,我无法解决预检请求问题:
curl -X OPTIONS \
http://localhost:8081/todos \
-H 'authorization: JWT xxx' \
-H 'cache-control: no-cache' \
-H 'postman-token: 744dff43-a6ad-337d-8b67-5a6f70af8864'
Run Code Online (Sandbox Code Playgroud)
我仍然得到:
Access-Control-Request-Method header is missing in CORS preflight request
Run Code Online (Sandbox Code Playgroud)
尽管按照建议使用了以下中间件:
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE FlexibleContexts #-}
module Adapter.Servant.Main (main) where
import ClassyPrelude hiding (Handler)
import Domain.Types.AppEnv
import Network.Wai.Handler.Warp
import Network.Wai
import Network.Wai.Middleware.RequestLogger
-- import qualified Adapter.Servant.TodoAPI as TodoAPI
import qualified Adapter.Servant.TODO.API as TodoAPI
import qualified Adapter.Servant.Swagger as Swagger
import …
Run Code Online (Sandbox Code Playgroud) 我正在尝试在反向代理后面的 docker 容器中运行 pgadmin4。PgAdmin4 正在连接到远程数据库。我遇到的问题是我不断收到以下错误:
\n\nflask_wtf.csrf.CSRFError: 400 Bad Request: The CSRF token is invalid.\n\n
Run Code Online (Sandbox Code Playgroud)\npgadmin_1 | Traceback (most recent call last):\npgadmin_1 | File "/usr/local/lib/python3.8/site-packages/flask/app.py", line 1811, in full_dispatch_request\npgadmin_1 | rv = self.preprocess_request()\npgadmin_1 | File "/usr/local/lib/python3.8/site-packages/flask/app.py", line 2087, in preprocess_request\npgadmin_1 | rv = func()\npgadmin_1 | File "/usr/local/lib/python3.8/site-packages/flask_wtf/csrf.py", line 224, in csrf_protect\npgadmin_1 | self.protect()\npgadmin_1 | File "/usr/local/lib/python3.8/site-packages/flask_wtf/csrf.py", line 259, in protect\npgadmin_1 | self._error_response(e.args[0])\npgadmin_1 | File "/usr/local/lib/python3.8/site-packages/flask_wtf/csrf.py", line 302, in _error_response\npgadmin_1 | raise CSRFError(reason)\npgadmin_1 | flask_wtf.csrf.CSRFError: 400 Bad Request: The CSRF …
Run Code Online (Sandbox Code Playgroud)