问题描述
我使用了google's json validator,它说我的json是有效的,但是出于某种原因,谷歌主页控件仍然给我“无法更新设置,请检查您的连接”。如果我有意在服务器中抛出错误(例如无效变量),则google home日志实际上会显示后端失败,但是当我使用适当的json时不会报告任何错误。还有什么其他错误?
这是我的json结构:
{
"requestId": "xxxxxxxxxxx","payload": {
"agentUserId": "xxxxxxxx","devices": [{
"id": "xxxxxxxxx","type": "action.devices.types.AIRPURIFIER","traits": ["action.devices.traits.OnOff","action.devices.traits.Toggles","action.devices.traits.FanSpeed","action.devices.traits.SensorState"],"name": {
"defaultNames": ["air Purifier"],"name": "Air Purifier","nicknames": ["Air Cleaner"]
},"willReportState": true,"attributes": {
"commandOnlyOnOff": false,"availableFanSpeeds": {
"speeds": [{
"speed_name": "S1","speed_values": [{
"speed_synonym": ["low","speed 1"],"lang": "en"
}]
},{
"speed_name": "S2","speed_values": [{
"speed_synonym": ["midlow","speed 2"],{
"speed_name": "S3","speed_values": [{
"speed_synonym": ["mid","speed 3"],{
"speed_name": "S4","speed_values": [{
"speed_synonym": ["midhigh","speed 4"],{
"speed_name": "S5","speed_values": [{
"speed_synonym": ["high","speed 5"],"lang": "en"
}]
}],"ordered": true
},"reversible": false,"availabletoggles": [{
"name": "automatic","name_values": [{
"name_synonym": ["auto","auto mode"],"lang": "en"
}]
}],"sensorStatesSupported": [{
"name": "AirQuality","descriptiveCapabilities": {
"availableStates": ["healthy","moderate","unhealthy"]
}
}]
},"deviceInfo": {
"manufacturer": "Hyperian","model": "100","hwVersion": "1.0","swVersion": "1.0"
}
}]
}
}
解决方法
找不到找到调试此类问题的有效方法。如果仅他们的云日志记录实际上记录了传入的json,而不仅仅是错误。
我的错误与与json结构无关的东西有关。