2017-02-01 11 views
1

私はIOSアプリケーションを開発しています。私はWindowsサーバーで独自の作成されたWebサービスホスティングを使用しています。 RapidSSLのSSL証明書も使用しています。UNIRest Https "ネットワーク接続が失われました"エラー

UniRest Objective-CライブラリUnirest Lib >>を使用しています。httpsアドレスを要求しようとすると、このエラーが発生します。

エラードメイン= NSURLErrorDomainコード= -1005 "ネットワーク接続は が失われました。" UserInfo = {NSUnderlyingError = 0x1702501a0 {エラー ドメイン= kCFErrorDomainCFNetworkコード= -1005 "ネットワーク接続は が失われました。 のUserInfo = {NSErrorFailingURLStringKey = https://myapi.com/authorize.aspx、 NSErrorFailingURLKey = https://myapi.com/authorize.aspx、 _kCFStreamErrorCodeKey = 54、_kCFStreamErrorDomainKey = 1、NSLocalizedDescription =ネットワーク接続が失われた。}}、 NSErrorFailingURLStringKey = https://myapi.com/authorize.aspx、 NSErrorFailingURLKey = https://myapi.com/authorize.aspx、 _kCFStreamErrorDomainKey = 1、_kCFStreamErrorCodeKey = 54、NSLocalizedDescription =ネットワーク接続が失われました}

しかし、httpプロトコルで同じアドレスを要求しても、エラーはありません。

ここにInfo.plist;

enter image description here

私は気付きました、Safariはまた、ページを開くことができません!奇妙な!

デスクトップChromeとデスクトップFirefoxではページを開くことができますが、デスクトップSafariも開くことができません。

は、ここに私のコードです:

+(void)RunAuthApiWithUsername:(NSString *)username Password:(NSString *)password completion:(void (^)(BOOL success, NSString* title, NSString* message))completionBlock 
{ 
    NSDictionary* headers = @{@"accept": @"application/json" 
           }; 
    NSDictionary *parameters = @{@"username": username, 
          @"password": password 
          }; 

    [[UNIRest post:^(UNISimpleRequest *request) { 
     [request setUrl:API_AUTHORIZE_URL]; 
     [request setHeaders:headers]; 
     [request setParameters:parameters]; 
    }] asJsonAsync:^(UNIHTTPJsonResponse* response, NSError *error) { 
     NSDictionary *jsonDict = response.body.JSONObject; 
     NSString* isSuccess = [jsonDict objectForKey:@"success"]; 
     if([isSuccess isEqualToString:@"1"]){ 
      completionBlock(YES, nil, nil); 
     } 
     else{ 
      completionBlock(NO, [jsonDict objectForKey:@"title"], [jsonDict objectForKey:@"message"]); 
     } 
    }]; 
} 
+0

https://stackoverflow.com/a/25996971/944634 –

+0

私はもはやUnirestライブラリを使用していません。ありがとう。 –

答えて

0

私は同様の問題を経験していて、それがタイムアウトの問題ではないように見えます。私はAlamofireを使っている間にそれを体験しています。これはTLSの問題に関係していると思います。これはサーバー側で変更されたものです。

関連する問題