首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python服务访问ajax调用,CORS错误

python服务访问ajax调用,CORS错误
EN

Stack Overflow用户
提问于 2021-09-15 14:07:48
回答 2查看 150关注 0票数 0

我对这个问题感到迷茫,我有一个用python编写的服务,我需要通过ajax调用从一个网页访问它

python代码如下:

代码语言:javascript
复制
import flask
from flask import request, jsonify, make_response
from flask_cors import CORS, cross_origin
    
from datetime import datetime, timedelta
app = flask.Flask(__name__)
app.run(host='0.0.0.0', port=5000)
cors = CORS(app)
app.config['CORS_HEADERS'] = 'Content-Type'

@app.route('/api/v1/resources/device/all', methods=['GET'])
@cross_origin()
def api_all():

[...]
 response = jsonify(result)
 response.headers.add("Access-Control-Allow-Origin", "*")
    
 return response,status_code

ajax调用是:

代码语言:javascript
复制
 $.ajax({
        type: 'get',
        crossDomain: true,
        dataType: "json",
        url: AddressWS + '/api/v1/resources/device/all?type=A',
        success: function (result) {
//.,...
        }
    });

错误永远是

...已被CORS策略阻止:请求的资源上没有“访问-控制-允许-原产地”标题。

web应用程序位于IIS下。问题是:如果我在python脚本中将0.0.0.0设置为address,那么应该在web应用程序中调用哪个地址?我试图对ipv4地址进行计算机处理,但没有运行。我如何解决cors问题,我似乎正确地包括了烧瓶库。

谢谢大家的友好答复

EN

回答 2

Stack Overflow用户

发布于 2021-09-15 16:11:32

CORS在代码中没有正确配置。请在下面找到具有正确CORS配置的代码。

代码语言:javascript
复制
import flask
from flask import request, jsonify, make_response
from flask_cors import CORS
from flask_restful import Api  
from datetime import datetime, timedelta

app = flask.Flask(__name__)
api = Api(app)
CORS(app)

@app.route('/api/v1/resources/device/all', methods=['GET'])
def api_all():
 [...]
 response = jsonify(result)
 status_code = 'some code'
 return response,status_code
 

if __name__ == '__main__':
    app.run()
票数 0
EN

Stack Overflow用户

发布于 2022-05-03 05:26:39

在我的案子里试试吧,

代码语言:javascript
复制
$.ajax({
        type: 'get',
        dataType: 'json',
        url: AddressWS + '/api/v1/resources/device/all?type=A',
        cors: true,
        contentType: 'application/json;charset=UTF-8',
        secure: true,
        headers: {
            'Access-Control-Allow-Origin': '*',
        },
        success: function (result) {
            //.,...
        },
        error: function (errorMessage) {
            console.log('error');
        }
    });
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69194728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档