[英]How to use the response of a fetch 'POST'?
我被這個問題困住了。 我正在使用 fetch Post 方法在我的服務器中發布我稱之為“articulo”的 object。 現在我有這個帖子的代碼:
async function postArticulo(articulo) {
debugger
const response = await fetch('http://192.168.100.3:3000/articulo', {
method: 'POST',
body: JSON.stringify(articulo)
})
const nuevoArticulo = await response.json();
console.log(nuevoArticulo);
return nuevoArticulo;
}
在我的服務器中,路由和響應是這樣的(我在這里使用快速依賴):
async postArticulo(req, res){
const articulo = req.body;
if(articulo) console.log(articulo.nombre + ' Good');
articulo.codigo = 87654321; //This is just for checking if i could change some value of the object
console.log(articulo.codigo);
return res.json({
nombre: `${articulo.nombre}`,
proveedor: `${articulo.proveedor}`,
rubro: `${articulo.rubro}`,
stock: `${articulo.stock}`,
costo: `${articulo.costo}`,
coeficiente: `${articulo.coeficiente}`,
codigo: `${articulo.codigo}`
});
}
我遇到的問題:當我運行它並使用 fetch Post 方法發布 object 時,我在服務器上做得很好,我可以閱讀和修改它。 但是當我使用相同的 object 從服務器發送響應時,我無法在客戶端上打開它。 我嘗試了與客戶端相同的方法,但通過 Imsomnia,服務器發送了我在其上發布的相同 object。 在客戶端上,我得到相同的 object,具有相同的屬性,但除數字外,值始終是“未定義”。 我已經在這個問題上停留了四天,無法繼續解決這個問題。 提前致謝。
編輯:在這里我添加了在使用 console.log 獲取之前和之后檢查 object 的方式
之前: codigo: 12345678 coeficiente: "1.4" costo: "425" nombre: "Perro" proveedor: "Whiskas" rubro: "Alimento" stock: "3"
之后: codigo: "87654321" coeficiente: "undefined" costo: "undefined" nombre: "undefined" proveedor: "undefined" rubro: "undefined" stock: "undefined"
console.log(typeof req.body, req.body) 服務器端:object { codigoArticulo:87654321 }
錯誤是沒有將標頭放入內容類型,因此服務器永遠不會知道我真正發送的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.