如何在python中使用jsonp和jsonify并捕捉ajax的返回

2024-05-15 12:42:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用jsonp用ajax调用一个函数(因为我调用url的服务器与发送ajax的服务器不同)。 ajax调用一个python函数,该函数删除一些目录,然后返回一些内容(返回对我来说并不重要)。当它返回时,它不会在success函数中返回(它在error函数上返回)。我做错什么了?在

注:我使用python和jsonify from flask

阿贾克斯:

$.ajax({
    url: 'http://serverPath:1234/deleteDir?path='+ id,
    type: 'GET',
    dataType: 'jsonp',
    success: function (data) { console.log(data);},//console.log(data); },
    error: function (data) { console.log(data); },
});

服务器上的PYTHON函数:

^{pr2}$

发送到错误函数(状态为200)的返回:

{readyState: 4, getResponseHeader: ƒ, getAllResponseHeaders: ƒ, setRequestHeader: ƒ, overrideMimeType: ƒ, …}

Tags: 函数from服务器目录logurl内容data
1条回答
网友
1楼 · 发布于 2024-05-15 12:42:55

您使用的是JSONP,因此必须将JSONP填充添加到结果中:

return '{funcname}({data})'.format(
    funcname=request.args.get('callback'),
    data=jsonify({'response':'ok'}),
)

在这里阅读有关JSONP的更多信息:https://en.wikipedia.org/wiki/JSONP

相关问题 更多 >