POST в NodeJS+Express
Всем привет вот уже второй день борюсь в Express Не могу нормально принять POST.
Модель:
Contacts.prototype.sendMessage = function(datas) {
var xhr = this.xhr(),
url = "/send_msg";
var data = new FormData();
data.append("text", datas.text);
data.append("user_id", datas.userId);
data.append("friends", datas.friend);
xhr.onreadystatechange = function() {
if (xhr.status == 200 && xhr.readyState == 4) {
window.postMessage({
sendImages: true
}, "*");
}
}
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.send(data);
}
app.js: Скопировал то что нужно не стал вставлять весь код.
var jsonParser = bodyParser.json()
var urlencodedParser = bodyParser.urlencoded({ extended: false })
app.post('/send_msg', urlencodedParser, function(req, res, next){
console.log(typeof req.body);
console.log(req.body);
});
Пробовал уже разными способами, даже без присвоение переменным парсера. в Extended писал значение true. Ну и многое другое что связано с bodyParser. Вывод консоли: http://joxi.ru/5mdGJ9RuXdRyr1 typeOf говорит что это обьект но доступа к его свойствам нет. Если пробовать парсить как стороку и обрабатывать через IndexOf тоже не дает... Как быть кто может посоветовать? |
Я не уверен, но скорей всего дело в new FormData() .
Цитата:
|
какая-то странная у вас инициализация бодипарсера..
а почему не:
var bodyParser = require('body-parser');
...
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
...
app.get( '/', routes.index);
?... |
| Часовой пояс GMT +3, время: 01:44. |