首页 > 解决方案 > Flask API 在邮递员和浏览器中工作,但在 JavaScript 代码中抛出错误

问题描述

我的 Flask API 在 Postman 上工作,当我在浏览器上调用它时也可以工作,比如(http://127.0.0.1:5000/)但是当我在 JavaScript 代码中调用这个 API 时(通过 Fetching HTTP 或任何其他方法)它抛出控制台上的错误这是控制台上的错误场景 Flask 代码如下:

from flask import Flask, jsonify,request
from flask_restful import Api, Resource


app = Flask(__name__)
api = Api(app)

class Home(Resource):
    def get(self):
        return jsonify("Hello Word!!")

api.add_resource(Home,'/')

if __name__ == "__main__":
    app.run(host="127.0.0.1", debug=True)

这是此代码在浏览器上的输出

当我在代码(我的 Web 项目)中调用 Api 时,它会引发错误。

JavaScript 代码:

<!DOCTYPE html>
<html>
<body>

<h2>The XMLHttpRequest Object</h2>

<button type="button" onclick="loadDoc()">Request data</button>

<p id="demo"></p>
<script type="text/javascript"></script> 
<script>
function loadDoc() {
    fetch('https://127.0.0.1:5000/hospitalData')
  .then((response) => {
    return response.json();
  })
  .then((myJson) => {
    console.log(myJson);
  });
}
</script>

</body>
</html>

标签: javascriptjqueryapiflask

解决方案


你启用了CORS吗?确实使用http://127.0.0.1https://127.0.0.1


推荐阅读