我嘗試使用 FastAPI 后端在我的本地機器上設定一個簡單的 API,然后使用一個簡單的 JS 腳本來獲取它。我google了一整天,但仍然無法弄清楚問題所在。
我敢打賭我錯過了什么。
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
另一方面,服務器回應是:
INFO: 127.0.0.1:60927 - "GET / HTTP/1.1" 200 OK
uj5u.com熱心網友回復:
“無法獲取”可能意味著許多不同的事情。
我建議您在檢查模式下打開網路選項卡。它應該看起來像這樣:
當程式獲取時,應該有一個請求發出,你應該在那里看到它。然后,您可以查看“狀態”,或單擊請求以獲得更清晰的錯誤,然后通過 Google 搜索。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/444837.html
標籤:javascript api ecmascript-6 拿来 快速API
上一篇:為什么我的Unity專案中不能包含RestSharp?
下一篇:用于運行分布式API測驗的工具
