app.post("/arraybuffer/:filename", function(req, res){
console.log(req.body);
console.log(req.params.filename);
}
У меня есть сервер nodejs, который получает ArrayBuffer
, отправленный ему со стороны клиента, используя xhr.send.
- Я вижу данные
ArrayBuffer
в разделе «Полезная нагрузка запроса» в запросеPOST
с помощью инструментов chrome dev на вкладке «Сеть»!
Но когда я console.log(req.body)
, я получаю {}
.
Я также пробовал console.log(new Uint8Array(req.body));
- аналогичный результат - Uint8Array {}
Кстати, console.log(req.params.filename);
работает нормально.
Нужна помощь, спасибо.
(P.S. В моем app.js вверху есть следующее, так что это не проблема синтаксического анализа json)
app.use(bodyparser.json({limit: "15mb"}));
app.use(bodyparser.urlencoded({extended: true}));
bodyparser
не обрабатывает двоичные данные, поэтому вам придется либо найти промежуточное программное обеспечение, которое это делает, либо просто прочитать фактические данные http post самостоятельно. - person jfriend00   schedule 26.03.2016