如何使用 alamofire 在 swift 3 中处理字符串响应

Posted

技术标签:

【中文标题】如何使用 alamofire 在 swift 3 中处理字符串响应【英文标题】:How to handle string response in swift 3 using alamofire 【发布时间】:2017-04-17 08:47:28 【问题描述】:

我正在尝试点击响应为:

“dbdg96t7331e150600836bc5dc026cc1649a887fc8b921b6111172db399d03566a944946e3cd13246901128413c3c9673d4e806a4v7j2yxe”。

那么我该如何处理响应中的这个字符串呢?这是我的代码:

    temp = "Resident|" + user_uid
    let url = "http://api.appname.my/encodedecode.php?text=\(temp)"
    Alamofire.request(url).responseJSON  (responseObject) -> Void in
        print(responseObject)
    

作为回应,我得到了这个:

失败:invalidURL("http://api.appname.my/encodedecode.php?text=Resident|uP6zkPihw1MPleJQ44WV1rsH1dO2")

【问题讨论】:

【参考方案1】:

管道 (|) 需要在 URL 中转义

temp = ("Resident|" + user_uid).addingPercentEncoding(withAllowedCharacters: CharacterSet.urlQueryAllowed)!

Alamofire.request 可能期望一个真正的URL 对象

let url = URL(string: "http://api.appname.my/encodedecode.php?text=\(temp)")!

【讨论】:

以上是关于如何使用 alamofire 在 swift 3 中处理字符串响应的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Alamofire 在 Swift 3 中解析 JSON?

Alamofire 4 请求返回 NSArray,无法弄清楚如何在 Swift 3 中使用 SwiftyJSON 进行解析

如何使用参数 swift 3.0 Alamofire 4.0 调用邮政服务?

如何使用 Alamofire 在 Xcode 8 Swift 3.0 中获取特定的 JSON?

如何使用 Alamofire 5.0.0-beta.3 (Swift 5) 上传图片(多部分)

如何在 Alamofire 请求 swift 3 上发出警报