在 Node.js 中删除/释放 Twilio 电话号码的语法是什么?

What is the syntax for deleting/releasing Twilio phone numbers in Node.js?

本文关键字:电话号码 语法 是什么 Twilio 释放 js Node 删除      更新时间:2023-09-26

尝试通过 API 删除 Twilio 电话号码时收到 404 错误。

这是我的代码:

  var twilioSID = user.numberSID; // PN946a0603c974be563c5916f865be4d0b
  var accountSid = '{removed}';
  var authToken = '{removed}';
  var client = require('twilio')(accountSid, authToken);
  client.incomingPhoneNumbers(twilioSID).delete(function(err, deleted) {
    if (err){
      console.log(err);
    } else {
      console.log('Deleted from Twilio');
    }
  });

这是我在控制台中遇到的错误:

  { 
     status: 404,
     message: 'The requested resource /2010-04-01/Accounts/{removed}/IncomingPhoneNumbers/PN946a0603c974be563c5916f865be4d0b.json was not found',
     code: 20404,
     moreInfo: 'https://www.twilio.com/docs/errors/20404' 
  }

Twilio API 也几乎没有任何删除数字的文档。关于为什么这不起作用的任何想法?

@parkeragee 您的解决方案正在工作

client.incomingPhoneNumbers(poneNumberSID).delete(function(err, deleted) {
    if (err){
      console.log(err);
    } else {
      console.log('Deleted from Twilio');
    }
});

他们在节点js模块中将其从删除更改为删除。

在撰写本文时,通过 API 删除 Twilio 电话号码的函数称为 remove 。如果您尝试使用 delete ,您应该会收到以下错误:

client.incoming电话号码(...).删除不是函数

我无法在Twilio API文档中找到任何参考资料;通过阅读源代码Luke找到了这个。

下面是一个调用remove的示例:

client.incomingPhoneNumbers(sid).remove()
.then(function(deleted) {
    // Success
})
.catch(function(error) {
    // Handle error
});

根据他们的 REST API 文档,您可以向 url 发送 HTTP DELETE 请求,例如 /2010-04-01/Accounts/{AccountSid}/IncomingPhoneNumbers/{IncomingPhoneNumberSid} .因此,错误消息中的 URL 看起来几乎是正确的,除了末尾的.json。无论哪种方式,如果电话号码实际上仍附加到您的帐户,则看起来像是其代码中的错误。

我的问题是我用我的测试电话号码覆盖了我的生产电话 nuber numberSID变量。因此,我分配给变量的user.numberSID;是针对 Twilio 测试电话号码的。因此,当它搜索该号码SID时,它返回了404。