2017-07-30 43 views
0

以前我用sessionManager.request.validate().responseJSONAlamofire - responseJSON

預procces反應是有可能改變的反應,我從服務器獲取,它被傳遞給responseJSON過嗎?在解析之前,我需要做一些字符串。

回答

1

你可以得到響應,Data並將其轉換爲String,過程,然後將其轉換爲JSON,這是我知道,如果有人有辦法更好,請張貼

這是一個示例代碼,我認爲你可以得到這個

let request = Alamofire.request(CustomizationManager.sharedInstance.getRequestUrlWithParameters(startDate: tupleDate.0, endDate: tupleDate.1), method: .get/*, parameters: CustomizationManager.sharedInstance.getDefaultParameters(), encoding: URLEncoding.queryString*/, headers: CustomizationManager.sharedInstance.getHeadersDict()).responseData { (response) in 

     if(response.result.isSuccess){ 
      if(response.data != nil) 
      { 
       let string = String(data: response.data!, encoding: .utf8) 
       let JSONResponse = CustomizationManager.sharedInstance.cleanStringAndConvertToJSON(dirtyString: string!) 

      } 
     }else{ 

     } 


    } 

    debugPrint(request.description) 

的想法,這是我的cleanStringAndConvertToJSON

func cleanStringAndConvertToJSON(dirtyString:String) ->SwiftyJSON.JSON 
    { 
     var cleanStr = dirtyString.replacingOccurrences(of: "callback=\(self.defaultParameters["callback"]!)(", with: "") 
     cleanStr = cleanStr.replacingOccurrences(of: ");", with: "") 
     return SwiftyJSON.JSON(data: cleanStr.data(using: .utf8)!) 
    } 

何pe這有助於幫助