JavaScript ES6 FastAPI 获取结果 "Type Error"

JavaScript ES6 FastAPI Fetch results in "Type Error"

我尝试在我的本地计算机上使用 FastAPI 后端设置一个简单的 API,然后使用一个简单的 JS 脚本获取它。我用谷歌搜索了一整天,但仍然无法找出问题所在。

我敢打赌我错过了什么。

The FastAPI 后端看起来像:

from fastapi import FastAPI
import uvicorn

from fastapi.middleware.cors import CORSMiddleware
app = FastAPI()

origins = [
    "http://localhost",
    "http://localhost:8000",
    "http://127.0.0.2",
    "http://127.0.0.2:8000"
]

app.add_middleware(
    CORSMiddleware,
    allow_origins=origins,
    allow_credentials=False,
    allow_methods=["*"],
    allow_headers=["*"],
)


@app.get("/")
async def root():
    return {"Message": "Root"}

    
if __name__ == '__main__':
    uvicorn.run(app, host="127.0.0.2", port="8000")

Js 脚本看起来像:

async function getRoot() {

fetchAdresse = 'http://127.0.0.2:8000';


const response = await fetch(fetchAdresse, {
    method: 'GET',
    headers: {
        accept: 'html/text',
    },
});

console.log(response);

}

getRoot();

响应始终相同:

Uncaught TypeError TypeError: Failed to fetch

另一方面,Hand 服务器响应是:

INFO:     127.0.0.1:60927 - "GET / HTTP/1.1" 200 OK

“获取失败”可能有多种含义。

我建议您在检查模式下打开网络选项卡。 它应该看起来像这样: 当程序获取时,应该会发出一个请求,您应该会在那里看到它。然后您可以查看“状态”,或单击更清楚错误的请求,然后 Google 那。