用户身份验证令牌不被接受,但在邮递员中工作

时间:2017-09-27 11:16:22

标签: ios iphone networking swift3 alamofire

从api响应中获取响应代码406。在邮差api运行成功,但在代码中它给出结果:

success : "{\"message\": \"User authentication token not accepted\"}"

并收到错误消息nil。

我没有得到,其他GET api正在工作,但不是这个,而且这个也在postman工作,但不是代码。

使用相同的标记,其他api正在工作,那么为什么这个api会收到此错误消息。并且用于api命中的常用方法。

以下是代码:

 var strToken : String = ""
        if let access_token = UserDefaults.standard.string(forKey: "auth_token"){
            let tokenValue = String(format: "Token %@", access_token);
            strToken = tokenValue
        }

        let headers: HTTPHeaders = [
            "Authorization": strToken,
            "Accept": "application/json"
        ]

        Alamofire.request(strCompleteURL, headers : headers).responseString { response in
            print("Got Alamofire Response: ", response.result)
            if response.result.isSuccess {
                if let data = response.data{
                    self.responseJR.responseCode = response.response?.statusCode
                    self.processResult(data);
                }
            }
            else if response.result.isFailure {
                if let error : Error = response.result.error{
                    self.responseJR.errorMessage = error.localizedDescription;
                }
                if let res = String(data: data!, encoding: String.Encoding.utf8)
                {
                    self.responseJR.infoResponse = res as AnyObject?;
                }

                DispatchQueue.main.async {
                    self.delegate?.didFinishServerCommunicationWithSuccess(self.responseJR)
                }
            }

请指导。

1 个答案:

答案 0 :(得分:0)

Swift 3.1 试试这个Almofire请求格式

如果GET请求,

将参数发送为nil 如果POST请求发送参数

  Alamofire.request(endPoint, method: .get, parameters: nil, encoding:JSONEncoding.default, headers:setHeader())
            .responseJSON { response in
}

检查您提供的身份验证令牌是否正确