有没有办法将变量从 client.js 文件发送到您的 node.js 文件?
Is there a way to send a variable from a client.js file to your node.js file?
我正在尝试将产品编号从我的客户端传递到我的服务器,以便将其保存到数据库中。我已经尝试了将近 100 种不同的方法来打印出 "prod" 变量,但没有任何效果。
我的代码中已经包含了正文解析器和其他内容。我做错了什么小事吗?如果是这样,我应该如何编辑我的客户端文件或服务器文件才能将 "prod" 从客户端传递到服务器。
现在如果只是说 undefined
Client.js:
function addToCart(prod1) {
fetch( '/addToCart' , { method: ' POST ', body: ' prod= ' + prod1 });
}
server.js:
app.post("/addToCart", (req, res) => {
console.log(req.body.prod);
});
我希望 "prod" 是什么,当我 console.log 将它显示在屏幕上时,它会在我的服务器文件中可见
我在这里看到的第一个问题是您没有拍摄客户请求的内容类型。
例如,如果您使用
headers: { 'Content-Type': 'application/json' }
传递 POST 数据的正确方法是:
body: JSON.stringify({prod: prod1})
为什么不尝试发送 json 对象而不是字符串?
data = {
prod: prod1
}
function addToCart(data) {
fetch( '/addToCart' , { method: ' POST ', body: JSON.stringify(data) });
}
添加 application/json
作为页眉的内容类型并使用 JSON.stringify({yourKey:yourData})
作为正文。
客户:
function addToCart(prod1) {
fetch( '/addToCart' , {
headers: { "Content-Type": "application/json" },
method: ' POST ',
body: JSON.stringify({prod : prod1 })
});
}
服务器:
app.post("/addToCart", (req, res) => {
console.log(req.body.prod);
});
我正在尝试将产品编号从我的客户端传递到我的服务器,以便将其保存到数据库中。我已经尝试了将近 100 种不同的方法来打印出 "prod" 变量,但没有任何效果。
我的代码中已经包含了正文解析器和其他内容。我做错了什么小事吗?如果是这样,我应该如何编辑我的客户端文件或服务器文件才能将 "prod" 从客户端传递到服务器。
现在如果只是说 undefined
Client.js:
function addToCart(prod1) {
fetch( '/addToCart' , { method: ' POST ', body: ' prod= ' + prod1 });
}
server.js:
app.post("/addToCart", (req, res) => {
console.log(req.body.prod);
});
我希望 "prod" 是什么,当我 console.log 将它显示在屏幕上时,它会在我的服务器文件中可见
我在这里看到的第一个问题是您没有拍摄客户请求的内容类型。 例如,如果您使用
headers: { 'Content-Type': 'application/json' }
传递 POST 数据的正确方法是:
body: JSON.stringify({prod: prod1})
为什么不尝试发送 json 对象而不是字符串?
data = {
prod: prod1
}
function addToCart(data) {
fetch( '/addToCart' , { method: ' POST ', body: JSON.stringify(data) });
}
添加 application/json
作为页眉的内容类型并使用 JSON.stringify({yourKey:yourData})
作为正文。
客户:
function addToCart(prod1) {
fetch( '/addToCart' , {
headers: { "Content-Type": "application/json" },
method: ' POST ',
body: JSON.stringify({prod : prod1 })
});
}
服务器:
app.post("/addToCart", (req, res) => {
console.log(req.body.prod);
});