我正在从API接收到JSON响应,该API的解析格式不正确。
我试图在开始时添加丢失的密钥,但不允许这样做。
[
{
"deviceId": "9092eab10f4",
"name": "temperature",
"timestamp": "2017-06-13T13:19:59.673Z",
"value": 21.5
},
{
"deviceId": "9092eab10f4",
"name": "temperature",
"timestamp": "2017-06-13T13:19:59.673Z",
"value": 21.5
}
]
我希望它具有缺少的键和类似的大括号:
{
"data": [
{
"deviceId": "9092eab10f4",
"name": "temperature",
"timestamp": "2017-06-13T13:19:59.673Z",
"value": 21.5
},
{
"deviceId": "9092eab10f4",
"name": "temperature",
"timestamp": "2017-06-13T13:19:59.673Z",
"value": 21.5
}
]
}
答案 0 :(得分:0)
简单对象分配?
const properResponse = Object.assign({}, {data: [response.json()]});
...假设响应是获取的,或与返回响应对象的json方法类似。
答案 1 :(得分:0)
我不确定您得到的响应是字符串还是对象。
这是一个小提琴,它同时考虑了这两种情况并将预期的输出记录到控制台。
https://jsfiddle.net/6yu9ngf5/2/
对于响应为字符串的情况,我使用了JSON.parse(<string>)
。
对于其他情况,我只是在您的回复中添加了数据密钥。