'PUT 404 (NOT FOUND) and SyntaxError: Unexpected token < in JSON at position 0
[PUT 404 (NotFound) ][1] [1]: https://i.stack.imgur.com/ugZng.png
Client-side code
const confirmDeliver = (event) => {
const newQuantity = inventory.quantity - 1;
const updateQuantity = { newQuantity };
const url = `http://localhost:5000/inventory/${inventoryId}`;
fetch(url, {
method: "PUT",
headers: {
"content-type": "application/json",
},
body: JSON.stringify(updateQuantity),
})
.then((response) => response.json())
.then((data) => console.log(data)); };
Server-side code
app.put("inventory/:id", async (req, res) => {
const id = req.params.id;
const updatedQuantity = req.body;
const filter = { _id: ObjectId(id) };
const options = { upsert: true };
const updatedDoc = {
$set: {
quantity: updatedQuantity.quantity,
},
};
const result = await inventoryCollection.updateOne(
filter,
options,
updatedDoc
);
res.send(result);
});
Can anyone tell me why I am getting this error? How can I solve this?
Solution 1:[1]
‘Unexpected token <‘ means the response returned is not a valid json. This error may be from a 404 error html page responded from backend.
The request method PUT is different from request methods GET, POST. Make sure the backend has a PUT request method with an appropriate endpoint ‘ http://localhost:5000/inventory/your-inventory-id’.
To fast test a SUCCESS connection to backend, simply return an empty {} json response.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | mondayrris |
