Cats萌萌
2022-08-27 09:56:14
我正在嘗試對我的服務器執行簡單的GET請求。URL是正確的,它使用python函數給出json。但是我無法在javascript中獲得相同的數據。此函數有問題。 async function get_status(){ socket.send("Status!"); URL = http://127.0.0.1:8000/api/status/'; response = await fetch(URL, { method: "GET", headers: { "Accept": "application/json" } }) socket.send(response.json()); console.log(response.json()); if (response.ok) { current = document.getElementById("status"); current.value= response.json()["status"]; } };
1 回答

當年話下
TA貢獻1890條經驗 獲得超9個贊
請嘗試:
const response = await fetch(URL);
if (response.ok) {
const json = await response.json();
console.log(json);
socket.send(json);
current = document.getElementById("status");
current.value= response.json()["status"];
} else {
console.log('request failed', response);
}
解釋
fetch(URL)返回,響應實現 Body 接口,這意味著返回另一個你應該“等待”的承諾。Promise<Response>response.json()
此外,只有在返回響應時,您才能獲取,這意味著此代碼應在包裝中執行。response.json()okif (response.ok) { ...
有關詳細信息,請參閱: https://www.npmjs.com/package/node-fetch#fetchurl-options
添加回答
舉報
0/150
提交
取消