5

すべてローカルで動作していますが、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 の結果はまだ null です。SendSMSMessage 関数は、RestSharp ライブラリ、特に RestClient の Execute 関数を利用します。これは Deserialize メソッドを呼び出し、この場合は Data フィールドが null である IRestResponse を返します。

問題がデシリアライゼーション プロセスにある可能性があるという兆候をオンラインでいくつか見ましたが、JSON.NET の最新バージョンを使用していることを確認したため、ここで他にどのような手順を実行すればよいかわかりません。

問題を解決するための提案はありますか?コードまたはサーバーの問題であると思われますか? また、Debian を使用して、この相互作用をさらにデバッグする方法、おそらくアプリケーションから外部で完全なバイト応答を取得する方法について何かアドバイスはありますか?

4

1 に答える 1

3

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:_セキュリティ

于 2013-01-31T03:24:31.827 に答える