2017-09-27 61 views
-1

從api響應獲取響應代碼406。在Postman API上運行成功,但在代碼中給出的結果如下:不接受用戶驗證令牌,但在郵遞員工作

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

並獲得錯誤消息nil。

我沒有得到,其他GET API正在工作,但不是這一個,這一個是在郵遞員也工作,但不是在代碼。

同樣的道理,其他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) 
       } 
      } 

請指導。

回答

0

雨燕3.1 試試這個Almofire請求格式

發送參數爲零,如果GET請求 發送參數如果POST請求

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

請檢查您是否提供您的身份驗證令牌是正確的

+0

同樣的迴應,沒有變化 –

+0

請求沒有問題,因爲它是從服務獲得響應....您所調用的get api是您的嗎? .....如果是,那麼在服務端進行調試。正如你可以看到錯誤是指定該令牌不正確,所以有功能,這是拋出這個錯誤,因爲一些問題..... –

+0

你有任何解決方案@ iPhone7。我面臨同樣的問題 –