首页 > 解决方案 > API 适用于 Postman,但不适用于浏览器

问题描述

我创建了一个连接到我的 mongodb 数据库的烧瓶 api。

我的代码的初始部分如下所示:

app = Flask(__name__)
cors = CORS(app, resources={
  r"/api/v1/*": {"origin": "*"},
})
client = MongoClient(connection_str)
db = client.get_database(db_name)

@app.route("/api/v1/players", methods = ['GET'])
def get_all_players():
    ....

这在我使用 Postman 时按预期工作,但是当我直接输入浏览器 ( localhost:5000/api/v1/players) 时,它会显示如下错误:

在此处输入图像描述

我认为这就是为什么我的fetch不起作用的原因。

有什么想法吗?

标签: javascriptpythonrestflask

解决方案


这是 SSL 证书的问题。您需要做的就是添加ssl_context='adhoc'到您的 app.run() 调用中。

一个例子 :

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello"

if __name__ == "__main__":
    app.run(ssl_context='adhoc')

你还需要安装pyopenssl在你的虚拟环境中


推荐阅读