Node js,用couchdb发出请求
Node js, put request with couchdb
我正在尝试从 JavaScript
发送 PUT
请求。我无法将值从 javascript
发送到 node js
,它正在给我编辑:error is Unexpected token: o at Object.parse()
。在这一行 var message = JSON.parse(req.responseText);
也许我应该提到我正在使用 bodyParser。
request.open("PUT", "myurl", true);
request.setRequestHeader('Content-Type', 'application/json');
request.send(JSON.stringify({message: "from javascript"}));
from node js
我想将该值发送到 couchDB
,但我不确定如何获取从 javascript
传递的 message
值
router.put('/fillMessage', function(req, res){
var request = new XMLHttpRequest();
//...
var message = req.body;
var newData = {_id: data._id, _rev: data._rev, message: "JS value goes here"};
//...
});
现在我正在调试节点 js req
变量,似乎没有 json 值传递给它。没有responseText
,或body
属性
大多数情况下 Unexpected token: o at Object.parse()
意味着无论您尝试解析什么都不是 JSON-encoded 字符串。它可能已经是一个对象,例如 JSON.parse({ two : 2 })
给出了同样的错误。
JSON.parse 尝试将输入转换为字符串,然后将其解析为 JSON,因此在
var foo = { two : 2 };
JSON.parse(foo); // throws, equivalent to JSON.parse("[object Object]")
使用 JSON.parse
时,最好先检查 req.responseText
是否为字符串,然后将 JSON.parse
包裹在 try/catch 块中。
我正在尝试从 JavaScript
发送 PUT
请求。我无法将值从 javascript
发送到 node js
,它正在给我编辑:error is Unexpected token: o at Object.parse()
。在这一行 var message = JSON.parse(req.responseText);
也许我应该提到我正在使用 bodyParser。
request.open("PUT", "myurl", true);
request.setRequestHeader('Content-Type', 'application/json');
request.send(JSON.stringify({message: "from javascript"}));
from node js
我想将该值发送到 couchDB
,但我不确定如何获取从 javascript
message
值
router.put('/fillMessage', function(req, res){
var request = new XMLHttpRequest();
//...
var message = req.body;
var newData = {_id: data._id, _rev: data._rev, message: "JS value goes here"};
//...
});
现在我正在调试节点 js req
变量,似乎没有 json 值传递给它。没有responseText
,或body
属性
大多数情况下 Unexpected token: o at Object.parse()
意味着无论您尝试解析什么都不是 JSON-encoded 字符串。它可能已经是一个对象,例如 JSON.parse({ two : 2 })
给出了同样的错误。
JSON.parse 尝试将输入转换为字符串,然后将其解析为 JSON,因此在
var foo = { two : 2 };
JSON.parse(foo); // throws, equivalent to JSON.parse("[object Object]")
使用 JSON.parse
时,最好先检查 req.responseText
是否为字符串,然后将 JSON.parse
包裹在 try/catch 块中。