【发布时间】:2018-03-17 05:25:45
【问题描述】:
我有一些代码可以从 Twilio 下载录音
getRecordingMedia: function (recordingId) {
var client = new Twilio(config.twillio.apiKey, config.twillio.apiSecret, { accountSid: config.twillio.accountId });
var uri = `https://video.twilio.com/v1/Recordings/${recordingId}/Media`;
var response = client.request({ method: "POST", uri: uri });
var mediaLocation = JSON.parse(response.body).location;
request.get(mediaLocation, (err, res, media) => {
return media;
});
}
我收到以下错误:
SyntaxError: 位置 0 处 JSON 中的意外标记 u
我查看了响应对象,它实际上是一个承诺。因此,似乎文档不正确,因为它没有处理承诺“then()”
我继续修改代码以使用承诺
var response = client.request({ method: "POST", uri: uri }).then((object) => {console.log(object);});
我实际上记录了一个错误
{状态码:405, body: '{"code": 20004, "message": "Method not allowed", "more_info": "https://www.twilio.com/docs/errors/20004", "status": 405}' }
我查看了引用链接上的文档,但对我没有多大帮助。
另外,如果我在浏览器中打开 url https://video.twilio.com/v1/Recordings/${recordingId}/Media 并输入凭据,我将获得录音。
因此,需要帮助来确定文档是否不正确(关于承诺 - https://www.twilio.com/docs/api/video/recordings-resource#code-retrieve-a-recording)以及为什么我收到代码 20004 的错误。
谢谢
【问题讨论】:
标签: node.js twilio twilio-api