0

我有如下设置的 Flask Python API 和 cors。从浏览器调用时它工作正常。但是从当前从 localhost:4200 测试的 Angular 应用程序调用时出现 CORS 错误。

从 Chrome 开发人员工具 - 可以看到请求方法 = 选项(预检请求)返回 200 的预检请求,但实际请求引发 CORS 错误。不知道我在这里做错了什么。请分享见解。

仅供参考 - 尝试了一些调整,例如使允许的来源 "*" ,删除 "supports_credentials=True";仍然相同的CORS错误

错误:

Error:
Access to XMLHttpRequest at 'https://app01.dev.com/coreengine?rootfolder=app01&childfolder=jun2020&team=app01&action=customhierarchy' from origin 'http://localhost:4200' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

代码:

from flask_cors import CORS
mainapp = Flask(__name__)
cors = CORS(mainapp, resources={r"/*": {"origins":["http://localhost:4200"]}},supports_credentials=True)
@mainapp.route('/coreengine', methods=['GET','POST'])
def coreengine():
{
  #Code 
}
4

1 回答 1

2

在与 package.json 文件平行的应用程序的根目录中,创建一个新文件 proxy.config.json

{
"/coreengine*": {
    "target":"https://app01.dev.manulife.com",
    "secure":true,
    "logLevel":"debug"
    }
}  

现在在脚本中的 package.json 中:{},添加以下文件名为 proxy.config.json 的 flax 以启动“

{
"scripts": {
    "start":"ng serve --proxy-config proxy.config.json",
    "test":"ng test"
}
}

希望这对你有用。

于 2020-08-08T05:34:56.390 回答