【问题标题】:Mixed Content error when making ajax call to Flask对 Flask 进行 ajax 调用时出现混合内容错误
【发布时间】:2015-11-26 12:11:25
【问题描述】:

我正在尝试从 https 页面使用 jQuery 进行 ajax 调用

javascript

var load = function (param1, param2) {
    return $.getJSON("https://www.domian.com/thing/" + param1 + "/" + param2 + "/", function (data) {
        // do stuff
    })
}

烧瓶端点

@app.route('/thing/<param1>/<param2>/')
def load(param1, param2):
    thing = get_thing(param1,param2)
    if thing:
        return jsonify(thing)
return jsonify(error="thing not found.")

我已经尝试添加

@app.after_request
def after_request(response):
    response.headers.add('Access-Control-Allow-Origin', '*')
    return response

我也尝试了各种不同的 url,例如:thing/ + blah,添加/删除斜杠无济于事

我也在使用 Flask-SSLify

这是 Chrome 中的错误:

混合内容:“https://www.domain.com/blah/”处的页面通过 HTTPS 加载,但请求了不安全的 XMLHttpRequest 端点“http://www.domain.com/thing/param1/param2/”。此请求已被阻止;内容必须通过 HTTPS 提供。

有人遇到过类似的问题吗?

【问题讨论】:

    标签: jquery python ajax https flask


    【解决方案1】:

    不要返回完整的$.getJSON,而是尝试返回响应:

    var load = function (param1, param2) {
        $.getJSON("https://www.domian.com/thing/" + param1 + "/" + param2 + "/", function (data) {
            // do stuff
            return data;
        })
    }
    

    【讨论】:

    • 您好 Manwal,感谢您的提示,这似乎仍然是个问题
    猜你喜欢
    • 2020-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-21
    • 2017-01-11
    • 2017-01-24
    • 1970-01-01
    • 2015-06-17
    相关资源
    最近更新 更多