2016-11-16 17 views
0

私はこのコードを使用しますのUIWebView + AFNetworkingは問題

webView.loadRequest(request!, progress: nil, success: { (responce, html) in 
      print("\n\n\nsuccess responce = ", html) 
      return html 
     }, failure: { (error) in 
      print("\n\n\nerror = ", error) 
     }) 

をしかし、私のサーバーは、無効なSSL sertificateを持っています。だから私はセキュリティポリシーを設定する必要があります。私はそのようにそれをやっていた前に:

[AFHTTPRequestOperationManager manager].securityPolicy.allowInvalidCertificates = YES; 

をしかしAFNetworking 3に何らAFHTTPRequestOperationManagerクラスはもうありません。 AFNetworking 3のすべてのリクエストに対してセキュリティポリシーを設定するにはどうすればよいですか?

答えて

2

AFNetworking3相当のAFHTTPRequestOperationManagerは、AFHTTPSessionManagerです。もちろん

webView.sessionManager.securityPolicy.allowInvalidCertificates = YES; 

他のソリューションは、サーバー上の無効な証明書を修正することです:

だから、WebViewの自体に、これを使用する必要があります。

+0

AFNetworkingはあなたに感謝し、 '[AFHTTPSessionManagerマネージャ]は'ウェブビューにリンクされていない新しいマネージャーが作成されますので、これは動作しません –

0

あなたが行うことができ、

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; 
manager.securityPolicy.allowInvalidCertificates = YES; 

参照:

+0

を助けました。 – 0xced

+0

私は 'AFHTTPRequestOperationManager'の代わりに' OP'が 'AFHTTPRequestOperationManager'を求めているオプションを' AFNetwrking 3.0'で利用できませんでした! OPはすべての要求に対してセキュリティポリシーを設定するよう求めています!だから、彼はシングルトンとして 'AFHTTPSessionManager'を使うことができます! – Lion

+0

'[AFHTTPSessionManager manager]'はシングルトンを返しません**、新しいセッションマネージャオブジェクトを作成します。 – 0xced

関連する問題