Twilio's TwilioRestClient SendSmsMessage returns null

本文关键字:SendSmsMessage returns null TwilioRestClient Twilio | 更新日期: 2023-09-27 17:56:48

我让一切都在本地工作,但是当我在运行 Mono 2.10.9 的 Amazon EC2 Debian 6.0.6 服务器上测试 Twilio 的服务时,我发现发送 SMS 消息不再有效。我相信问题出在服务器配置的某个地方,因为我使用的是最新的 Twilio (3.5.6)、RestSharp (104.1) 和 JSON.NET (4.5.11) 库,我可以保证以下方法调用中使用的变量在运行时不为空。

var client = new Twilio.TwilioRestClient("{my account number}", "{my account token}");
var smsMessage = client.SendSmsMessage("{my account phone number}", "{my mobile phone number}", "Hello World!");

使用 ntop,我已经看到有字节被发送/接收到/形成此请求,但 smsMessage 结果仍然是空的。SendSMSMessage 函数利用 RestSharp 库,特别是 RestClient 的 Execute 函数,该函数调用反序列化方法并返回 IRestResponse,在这种情况下,数据字段为 null。

在网上看到一些迹象表明问题可能出在反序列化过程中,但是,由于我确保使用的是最新版本的 JSON.NET,因此我不确定在这里要采取哪些其他步骤。

您对解决问题有任何建议,您是否怀疑这是代码或服务器问题?另外,在使用 Debian 时,您有什么建议,我如何进一步调试此交互,甚至可能从应用程序外部获取完整的字节响应?

Twilio's TwilioRestClient SendSmsMessage returns null

在调试 RestSharp 库时,我发现异常与 SSL 和 Mono 的受信任证书有关。我收到的异常消息如下:

Error getting response stream (Write: The authentication or decryption has failed.): SendFailure

按照以下链接中的说明帮助我解决了问题,特别是通过执行以下命令并重新启动单声道。

certmgr -ssl https://api.twilio.com

http://www.mono-project.com/FAQ:_Security