【问题标题】:Alamofire always give me error with status code 500 in responseAlamofire 总是给我错误的状态码 500 作为响应
【发布时间】:2016-01-07 18:33:33
【问题描述】:

我面临以下问题,我正在尝试使用 Alamofire 访问我的应用程序中的一些 Web 服务,这是我正在使用的代码:

Alamofire.request(.GET, "https://httpbin.org/get")
        .validate()
        .responseJSON { response in
            switch response.result {
            case .Success:
                print("Validation Successful")
            case .Failure(let error):
                print(error)
            }
    }

结果是“验证成功”,这是正确的,但问题是当我尝试调用我自己的服务时,如果有人想检查它,这是 Web 服务的 url: https://ratid.com/RapidSentry/MiOSService.svc/GetUserIdentity... 如您所见,此 Web 服务运行良好,但是当我调用相同的代码但使用我的 url 时,出现以下错误:

Error Domain=com.alamofire.error Code=-6003 "Response status code was unacceptable: 500" UserInfo={NSLocalizedFailureReason=Response status code was unacceptable: 500}

我已经在一个 android 应用程序中使用了这个 Web 服务,并且可以很好地处理 GET 请求 请在此问题上提供任何帮助。 注意:我使用的是 Xcode 7 和 swift。

【问题讨论】:

    标签: ios swift xcode7 alamofire


    【解决方案1】:

    我想就此提供反馈,这似乎是 Xcode 7 Beta 模拟器中的一个错误,因为我在物理设备上测试了该应用程序并且它运行良好。此外,当您重置模拟器并重新启动时,它会再次开始工作。 这是我们在使用 beta 时遇到的问题。

    【讨论】:

      【解决方案2】:

      将可接受的状态代码范围传递给验证函数,如下所示:

      .validate(statusCode: 200..<500)
      

      【讨论】:

        【解决方案3】:

        您可以将 Alamofire/validation.swift 文件中的可接受状态代码范围从 200..

        替换下一行

        let acceptableStatusCodes: Range<Int> = 200..<300
        

        用这条线

        let acceptableStatusCodes: Range<Int> = 200..<500
        

        【讨论】:

        • 如何在视图控制器中加载 xib 并为其分配框架
        【解决方案4】:

        状态码 500 表示服务器有问题,而不是您的代码。

        Status code in HTTP

        【讨论】:

        • 你可以看到 Web 服务没有任何问题,如果你点击你会得到 JSON 的 url,你是对的,但我不知道这是什么问题跨度>
        • 我也遇到同样的错误,你找到解决办法了吗?
        • 我也遇到了
        • 我也面临这个问题。谁能解决?
        猜你喜欢
        • 2018-12-28
        • 1970-01-01
        • 2016-01-18
        • 1970-01-01
        • 1970-01-01
        • 2021-03-15
        • 2018-02-19
        • 1970-01-01
        • 2018-05-26
        相关资源
        最近更新 更多