AWS EB Flask应用程序部署无法获得HTTP标头授权

时间:2019-07-26 13:14:10

标签: amazon-web-services flask http-headers authorization amazon-elastic-beanstalk

我正在将Flask应用程序部署到AWS EB。这是一个使用HTTP标头身份验证为Authorization: {token}的API。问题是我发出请求时,应用无法访问它们。

该代码可在本地完美运行,并已部署在VPS上。我读过其他一些类似的问题,但是它们的解决方案不起作用。

我的.ebextensions/01_flask.config文件如下:

container_commands:
  01_wsgipass:
    command: 'echo "WSGIPassAuthorization On" >> ../wsgi.conf'

option_settings:
  "aws:elasticbeanstalk:application:environment":
    "PYTHONPATH": "/opt/python/current/app:$PYTHONPATH"
    "ALLOWED_HOSTS": ".elasticbeanstalk.com"

  "aws:elasticbeanstalk:container:python":
    WSGIPath: application.py
    NumProcesses: 3
    NumThreads: 20

几天前,我在AWS EB中部署了Django应用程序,并且遇到了同样的问题。但是在这种情况下,配置文件中的01_wsgipass命令可以很好地解决问题。 我不明白为什么在这种情况下它不起作用。

1 个答案:

答案 0 :(得分:2)

1).ebextensions / 01_flask.config

container_commands:
03wsgipass:
command: 'echo "WSGIPassAuthorization On" >> ../wsgi.conf'

2)端点集装饰器

@cross_origin(origin=CORS_ORIGINS, headers=['Authorization'])