我有一个带服务的lib女巫调用Twilio api发送sms消息。此lib用于ASP MWC项目。功能SendMessage返回null。我将此代码粘贴到一个新的控制台应用程序中,并且运行良好 - 已发送短信。我不明白为什么完全相同的代码在我的项目中不起作用。
Twilio.Api 3.4.1.0
代码
string AuthToken = "___";
string AccountSid = "___";
string Sender = "___";
TwilioRestClient Client = new TwilioRestClient(AccountSid, AuthToken);
var smsMessage = Client.SendMessage(Sender, "197_______1", "Some text");
也许这是ssl的问题?如何检查?
答案 0 :(得分:1)
Twilio传道者在这里。
首先,我确保您已拉入项目的NuGet包是最新版本(4.0.2我相信)。请注意,程序包版本与实际程序集版本不同。
其次,检查RestException属性是否为null:
if (Client.RestException != null) {
//something bad happened
}
最后,如果这些建议都没有帮助,请打破像Fiddler这样的HTTP代理工具,并检查该库是否实际上向Twilio发出了成功的HTTP请求。
希望有所帮助。
答案 1 :(得分:0)
在Application_Start方法的global.asax文件中,我注释掉了代码:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
发送消息有效。 所以我建议问题是因为在我的机器上没有设置ssl协议。但我认为对于实时服务器而言,这不是一个好的解决方案。管理员告诉我,他们在本地机器上设置了原始设备。所以我希望当我写在全球的asax中时:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;
在实时服务器上发送消息将起作用。 如果我以错误的方式发现它,请纠正我。