无法使用getJSON从Flask Rest API获取Json

马里奥波罗

我是Java语言的新手,但遇到以下问题。所以我做一个简单的Flask API返回一个简单的json

烧瓶代码:

from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/test')
def test():
    return jsonify({"result":"wt is works!"})

if __name__=="__main__":
    app.run()

我使用它运行gunicorn -k gevent -w 5 main:app,当我localhost:8000/test在浏览器中入时,它会正常返回json

但是,当我尝试使用Jquery来获取它时,它什么也不返回。我的HTML没有任何价值localhost:8000/test

我当前的html代码:

<html>
    <head>
        <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
        <script type=text/javascript>
            $(document).ready(function(){
                $.getJSON(
                    "http://localhost:8000/test",
                    {format: "json"})
                    .done(
                        function(data) {
                            var plot_id = data.result;
                            $("#retval").html( "<strong>" + plot_id + "</strong>" );
                        }
                    );
            });
        </script>
    </head>
    <body>
        <div id="retval"></div>
    </body>
</html>

但是,当我更改URL并尝试从另一个API获取数据时,请说https://jsonplaceholder.typicode.com/posts/1可以正常工作。

我尝试过以下解决方案:

但这仍然行不通,请有人帮我找出问题所在吗?

范安德
  • 定义要用作服务器端口的端口: app.run(host='0.0.0.0', port=8000)
  • 更重要的是,浏览器localhost:8000/test在您的功能之间的转换方式getJSONajax不同。它有一个关于'access-control-allow-origin'的问题在flask中,您可以使用flask-CORS软件包完成工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章