0

我正在从 Web 客户端发送一个 JSON 对象,如下所示:

{"AudioEncoder":{"Settings":{"1":{"audio_bitrate":"16000"}}}}

在我收到的请求中req.body.myvalue

{"AudioEncoder":{"Settings":[null,{"audio_bitrate":"16000"}]}}

在我的浏览器的网络面板中,我看到了正确的值:

myvalue[AudioEncoder][Settings][1][audio_bitrate]:16000

错误是我期望带有 key 的对象{1:...但 get [null:...

任何想法为什么会发生这种情况?

4

1 回答 1

1

我怀疑您的浏览器实际上并没有发送 JSON,而是发送application/x-www-form-urlencoded. 如果您尝试让浏览器发送 JSON: ,这不是正确的值myvalue[AudioEncoder][Settings][1][audio_bitrate]:16000。那不是 JSON。检查请求标头Content-Type并查看请求的原始正文以验证这一点。如果您发布发送 AJAX 的浏览器 JS,我们可以帮助您解决该问题。jQuery 使得正确指定选项以使其真正发送 JSON 变得有点棘手。

于 2013-07-31T18:02:03.430 回答