Spotify Web-API&转移用户的播放:格式错误的JSON

时间:2018-04-24 09:16:56

标签: javascript json spotify

到目前为止,我一直在使用spotify-web-api-js与Spotify Web API进行互动。

但是,当我尝试使用transferMyPlayback()方法更改设备时,我总是收到指向格式错误的JSON的错误响应。

response: "{\n  \"error\" : {\n    \"status\" : 400,\n    \"message\" : \"Malformed json\"\n  }\n}"

此方法采用包含设备ID的JSON数组。

这是我的代码:

    var deviceIds = {}
    deviceIds["device_ids"] = [id]

    var deviceIds_JSON = JSON.stringify(deviceIds)

    spotifyApi.transferMyPlayback(deviceIds_JSON)
      .then(function(data){
        console.log(data)
      }, function(err){
        console.log(err)
      });

Console.log(deviceIds_JSON)给出如下内容:

{"device_ids":["948b56d03d394e0533f198152b852eef85799df2"]}

我已经尝试了几个操作JSON的东西,但最终总是出现错误400 - 格式错误的JSON消息。

我还尝试使用上面的deviceIds_JSON输出提供Spotify Web-API Console Request Body,这给了我一个curl命令......从控制台执行时效果很好。所以,是的...我在那里有点困惑。

任何人都可以指出我的问题可能在哪里?

提前致谢< 3

1 个答案:

答案 0 :(得分:1)

doc中所述,您应该传递一个字符串数组作为第一个参数

试试这个:

var deviceIds = [id]
spotifyApi.transferMyPlayback(deviceIds)
.then(...)