2011-02-01 16 views
5

古いiPhoneでhttpsリクエストを処理することに問題がある方。古いiPhone 3GSでのHTTPSリクエスト

接続がエラーで失敗しました。エラーメッセージは次のとおりです。

theConnectionとERROR:-1202エラードメイン= NSURLErrorDomainコード=可能性www.ourwesbite.co.uk 『「。このサーバーの証明書が無効であるあなたがあることをふりをしているサーバに接続されることがあります』あなたの機密情報を危険にさらしてください。

「ourwebsite」には有効な証明書がありますが、この問題は新しいiphone/ipod touchまたはipadsのうちで最も古いiphoneだけでは発生しません。

これは、ログインプロセスが正常に実行されているという接続エラーのアラートをユーザーが「OK」をクリックした後で接続エラーをスローすることによってログインに影響を与えています。しかし、問題はログイン後にUIに影響を与えることです。

だから、他の誰かが古いiphoneでこのような問題を抱えているかどうかを知りたいのです。私のコードに問題はありません。それは、シミュレータ& ipad/4gen ipod touchで完璧に動作します。

ありがとう

+0

iPhone 3GはどのiOSバージョンで動作していますか?非同期のNSURLConnectionを実行していますか? – fsaint

答えて

2

いいえ、証明書が有効な場合でも、エラーが発生します。したがって、NSURLConnectionの次のデリゲートメソッドを使用すると、この問題は解決しました。

-(void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge{ 

認証に挑戦するときに呼び出されます。次のコードでは、https接続を続けることができます。

[challenge.sender useCredential:[NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust] forAuthenticationChallenge:challenge]; 

そして、それはそれはそれは我々がこのエラーを持っていたし、問題のiPhone 3Gは誤った日付と時刻のセットを持っていた

8

信頼できないと感じる場合を介して接続を可能にします。これは、すべてのSSLトランザクションが失敗することを意味しました。

私はこのiOSのバグは私たちのものではなく、アップルの問題であると考えていたので、無視するSSL証明書をハッキングするのは解決策ではありません!

関連する問題