搜索这一点已经证明是困难的,因为大多数人都要求他们有一个他们序列化(错误)的对象。
我只是发送string
。不是对象,只是string
。这是在它被解雇之前的请求。 JSON.parse
可以很好地处理有效负载。根据{{3}},字符串被正确地双引号。
Express JS只给出了一个非常简单的错误:Error: invalid json
。如果只将字符串作为有效负载发送,我需要做什么?
答案 0 :(得分:5)
默认情况下,基于express.bodyParser()
connect
中间件的json
在strict mode中运行。严格模式只会解析对象或数组,严格遵守JSON规范。
JSON基于两种结构:
名称/值对的集合。在各种语言中,这是 实现为对象,记录,结构,字典,哈希表,键控 列表或关联数组。
有序的值列表。多数情况 语言,这被实现为数组,向量,列表或序列。
如果你想要非严格版本,你可以选择使用只使用JSON.parse
的选项来获取它,这可以解析原始JSON值的字符串表示,例如' true&#39 ;,'" stackoverflow"',' 42'等等。
app.use(connect.bodyParser({strict: false}));