私はAFNetworkingからAlamofireにプロジェクトを転送しています。本当にプロジェクトが好きです。しかし、GETリクエストを作成しようとするとこのエラーが発生します。私のVCで、その後Alamofireリクエストエラー:NSURLErrorDomainコード-1005ネットワーク接続が失われました
class func listCloudCredntials(onlyNew onlyNew: Bool = true, includePending: Bool = true) -> Request {
let parameters: [String: AnyObject] = includePending ? ["include_pending": "true"] : [:]
let urlString = "https://myapp-staging.herokuapp.com/api/1/credntials"
let token = SSKeychain.storedToken()
let headers: [String: String] = ["Authorization": "Bearer \(token)"]
return Alamofire.request(.GET, urlString, parameters: parameters, encoding: .JSON, headers: headers)
}
:ここ
は、いくつかのサンプルコードです
listCloudCredntials().validate().responseJSON() {
(response: Response<AnyObject, NSError>) in
switch response.result {
case .Success(let result):
printCR("success: \(result)")
case .Failure(let error):
printCR("error: \(error)")
}
}
ここで私はに実行しているエラーです:私が実行して試してみた
Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost." UserInfo={NSUnderlyingError=0x14e9c77f0 {Error Domain=kCFErrorDomainCFNetwork Code=-1005 "(null)" UserInfo={_kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4}}, NSErrorFailingURLStringKey= https://myapp-staging.herokuapp.com/api/1/credntials , NSErrorFailingURLKey= https://myapp-staging.herokuapp.com/api/1/credntials , _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-4, NSLocalizedDescription=The network connection was lost.}
は、 1OS 8.4とiOS 9.1を搭載したiOSシミュレータ、iOS 9.1を実行している私のiPhone 6Sをご覧ください。
私は間違っていますか?
-------- EDIT --------
明確にするためには、この機能はAFNetworkingでうまく動作します。私はカールが正常に戻るようにするために-X GETをカールするカール-iを変更する必要が
$ curl -i \
-H "Authorization: Bearer some-JWT-Security-Token" \
-H "Content-Type: application/json" \
-H "Accept-Language: en-US;q=1.0" \
-H "Accept-Encoding: gzip;q=1.0,compress;q=0.5" \
-H "User-Agent: Company/com.Company.AppName (1081; OS Version 9.2 (Build 13C75))" \
-d "{\"include_pending\":\"true\"}" \
"https://appname-staging.herokuapp.com/api/1/credntials"
:
ここdebugprint(リクエスト)の結果は、(それがGETリクエストです)です。
ここでは、問題なく動作するようにアプリで行う必要がある別の呼び出しがあります。
curl -i \
-X POST \
-H "Content-Type: application/json" \
-H "Accept-Language: en-US;q=1.0" \
-H "Accept-Encoding: gzip;q=1.0,compress;q=0.5" \
-H "User-Agent: Company/com.Company.AppName (1081; OS Version 9.2 (Build 13C75))" \
-d "{\"token\":\"UserSessionTokenString\"}" \
"https://appname-staging.herokuapp.com/api/1/authenticate/user"
GETとPOSTの違いはありますか?
[Error Domain = NSURLErrorDomain Code = -1005 "ネットワーク接続が失われました"という重複している可能性があります。(http://stackoverflow.com/questions/25372318/error-domain-nsurlerrordomain-code- 1005-the-network-connection-was-lost) – sunshinejr