簡體   English   中英

將 AWS Amplify 前端連接到 AWS Elastic Beanstalk 后端時的 CORS 問題

[英]CORS issue when connecting AWS Amplify frontend to AWS Elastic Beanstalk backend

背景:我的應用程序的前端 (Vue) 部署在 AWS Amplify 上,后端 (Python) 部署在 AWS Elastic Beanstalk 上。 我的前端通過 Axios 連接到后端。

問題:從前端向后端發送數據時,出現CORS error Access to XMLHttpRequest at '***' from origin '***' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

當我的前端向本地主機發送數據時,沒有問題,所以我認為這不是我的代碼的問題。 是否需要更改有關 Elastic Beanstalk 配置的某些內容?

我不確定我需要包含哪些代碼才能得到正確的答案,所以請告訴我你想看到什么,我可以適當地更新問題。 我在下面添加了我的application.py代碼,目前正在使用 Flask-CORS。

from flask import Flask, render_template
from flask import request, session
from flask_cors import CORS
import os
from common.api import api
from journal_blueprint import journal_blueprint
from manuscript_blueprint import manuscript_blueprint
from user_blueprint import user_blueprint
from models.decorators import requires_login
from models.user import User
from models.manuscript import Manuscript
from models.journal import Journal
from config_file import BaseConfig

application=Flask(__name__)

application.secret_key = BaseConfig.SECRET_KEY
application.config['SQLALCHEMY_DATABASE_URI'] = os.environ["DATABASE_URL"]

CORS(application)

application.register_blueprint(journal_blueprint, url_prefix='/journal')
application.register_blueprint(user_blueprint, url_prefix='/user')
application.register_blueprint(manuscript_blueprint, url_prefix='/manuscript')
application.register_blueprint(api, url_prefix="/api")


@application.route('/')
def home_template():
    return render_template('index.html')


@application.route('/login')
def login_template():
    return render_template('user/login.html')


@application.route('/register')
def register_template():
    return render_template('user/register.html')


if __name__ == '__main__':
    # application.run(debug=True)
    application.run()

你的配置看起來不錯。 請在 elasticbeantalk 日志中查找錯誤。 應用程序可能會在 elasticbeanstalk 環境中拋出一些錯誤,在此期間不會返回 CORS 標頭。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM