【问题标题】:Return a response in jsonp format from Flask for jQuery从 Flask for jQuery 返回 jsonp 格式的响应
【发布时间】:2020-11-09 16:15:55
【问题描述】:

我对 Web 开发后端非常陌生,我的目标是从 Javascript 调用 python 脚本。

使用 Flask,我想我可以在 localhost 端口 5000 上托管我的 python 脚本 蟒蛇代码:

from flask import Flask

app = Flask(__name__)

@app.route('/sub', methods=['GET', 'POST'])
def my_func():
   """
   I want this function to be called using javascript 
   """

这就是我尝试在 JavaScript 中使用 ajax 来调用函数的方式

function logResults(json){
    console.log(json);
}    

$.ajax({
       url: "http://0.0.0.0:5000/sub",
       dataType: "jsonp",
       jsonpCallback: "logResults"
    });

我了解到您必须使用 jsonp 才能进行跨域请求。 (例如,当 javascript 在 localhost 的 9000 端口上运行时,我需要到达 localhost 的 5000 端口)

在尝试运行此代码时,我收到了

源为“http://0.0.0.0:5000/sub?callback=logResults&_=1604937695311”的 加载失败。

有谁知道我可能在哪里犯了错误?我在正确的轨道上吗?

【问题讨论】:

    标签: python jquery flask


    【解决方案1】:

    这对我有用,但是有谁知道当 dataType 是 jsonp 时如何发送数据参数?

    $.ajax({
        url: "http://localhost:5000/sub",
        dataType: "jsonp",
        jsonpCallback: "logResults"
        });
    

    【讨论】:

      猜你喜欢
      • 2017-10-15
      • 2013-12-13
      • 2012-01-25
      • 2013-07-31
      • 2011-12-14
      • 2017-07-07
      • 2021-12-26
      相关资源
      最近更新 更多