2017-07-30 77 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这有助于帮助