簡體   English   中英

Alamofire-在responseJSON之前預先處理響應

[英]Alamofire - pre-procces response before responseJSON

我將sessionManager.requestsessionManager.request .validate().responseJSON

在將我從服務器獲得的responseJSON傳遞給responseJSON之前,是否可以對其進行修改? 在解析之前,我需要做一些字符串工作。

您可以將響應作為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)!)
    } 

希望這可以幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM