使用 Twilio 获取调用实例(节点帮助程序库 3.x)
Fetching a Call Instance with Twilio (Node Helper Library 3.x)
Twilio is deprecating Node Helper Library 2.x on 8/31/2017 并对其 3.x 版本进行了一些更改。我曾经通过以下方式获取单个呼叫的详细信息:
client.calls(sid).get(function(err, call) {
if(!err) {
console.log(call);
}
});
使用 2.x,get()
方法 return 有效 JSON:
{"sid": "xxxx", "date_created": "xxxx", "date_updated": "xxxx",...
对于 3.x,fetch()
方法取代了 get()
(现在使用 promises)。使用 fetch()
,而不是收到有效的 JSON 响应,我现在得到一个 JavaScript CallInstance
对象:
CallInstance {
_version:
V2010 {
_domain:
Api {
twilio: [Object],
baseUrl: 'https://api.twilio.com',
_v2010: [Circular] },
_version: '2010-04-01',
_accounts: undefined,
_account:
AccountContext {
_version: [Circular],
_solution: [Object],
...
如果我将 baseUrl
加上 CallInstance
(https://api.twilio.com/2010-04-01/Accounts/xxx/Calls/xxx.json) 中的 uri
拼凑在一起,那么我可以得到旧的 JSON 响应我在找。
问题: Twilio Node Helper Library 3.x 是否有办法将 return 旧的有效 JSON 格式代替一个 CallInstance
对象?
此处为 Twilio 开发人员布道师。
版本 3 Twilio Node library doesn't return a plain JavaScript object and as far as I can see, looking through the code,您不能简单地使用库访问来自 API 的纯 JSON 响应。
您可以自己创建 URL 并向 API 发出请求 return 原始响应,使用类似这样的东西(使用与 Twilio 在引擎盖):
var request = require('request');
var accountSid = YOUR_ACCOUNT_SID;
var authToken = YOUR_AUTH_TOKEN;
var callSid = CALL_SID;
var url = 'https://api.twilio.com/2010-04-01/Accounts/'+ accountSid +'/Calls/'+ callSid +'.json';
request.get(url, {
'auth': {
'user': accountSid,
'pass': authToken,
'sendImmediately': true
}
}, function (error, response, body) {
console.log(body);
});
顺便说一句,我想了解您需要原始 JavaScript 对象的目的是什么? CallInstance
对象中提供了所有相同的数据,以及用于加载有关实例的更多或相关数据的更多方法。
Twilio is deprecating Node Helper Library 2.x on 8/31/2017 并对其 3.x 版本进行了一些更改。我曾经通过以下方式获取单个呼叫的详细信息:
client.calls(sid).get(function(err, call) {
if(!err) {
console.log(call);
}
});
使用 2.x,get()
方法 return 有效 JSON:
{"sid": "xxxx", "date_created": "xxxx", "date_updated": "xxxx",...
对于 3.x,fetch()
方法取代了 get()
(现在使用 promises)。使用 fetch()
,而不是收到有效的 JSON 响应,我现在得到一个 JavaScript CallInstance
对象:
CallInstance {
_version:
V2010 {
_domain:
Api {
twilio: [Object],
baseUrl: 'https://api.twilio.com',
_v2010: [Circular] },
_version: '2010-04-01',
_accounts: undefined,
_account:
AccountContext {
_version: [Circular],
_solution: [Object],
...
如果我将 baseUrl
加上 CallInstance
(https://api.twilio.com/2010-04-01/Accounts/xxx/Calls/xxx.json) 中的 uri
拼凑在一起,那么我可以得到旧的 JSON 响应我在找。
问题: Twilio Node Helper Library 3.x 是否有办法将 return 旧的有效 JSON 格式代替一个 CallInstance
对象?
此处为 Twilio 开发人员布道师。
版本 3 Twilio Node library doesn't return a plain JavaScript object and as far as I can see, looking through the code,您不能简单地使用库访问来自 API 的纯 JSON 响应。
您可以自己创建 URL 并向 API 发出请求 return 原始响应,使用类似这样的东西(使用与 Twilio 在引擎盖):
var request = require('request');
var accountSid = YOUR_ACCOUNT_SID;
var authToken = YOUR_AUTH_TOKEN;
var callSid = CALL_SID;
var url = 'https://api.twilio.com/2010-04-01/Accounts/'+ accountSid +'/Calls/'+ callSid +'.json';
request.get(url, {
'auth': {
'user': accountSid,
'pass': authToken,
'sendImmediately': true
}
}, function (error, response, body) {
console.log(body);
});
顺便说一句,我想了解您需要原始 JavaScript 对象的目的是什么? CallInstance
对象中提供了所有相同的数据,以及用于加载有关实例的更多或相关数据的更多方法。