【问题标题】:Issue wtih urls returned in JSONJSON 中返回的 url 问题
【发布时间】:2015-04-12 22:41:15
【问题描述】:

我正在使用 Alamofire 向 API Restful 和 SwiftyJSON 发出请求以处理 JSON 响应,方式如下:

Alamofire.request(.POST, urlTo, parameters: params, encoding: .URL).responseString(completionHandler: {
         (request: NSURLRequest, response: NSHTTPURLResponse?, 
          responseBody: String?, error: NSError?) -> Void in

   var response = self.stripHtmlTags(responseBody!)

   // Parse the response to NSData
   if let data = (response as NSString).dataUsingEncoding(NSUTF8StringEncoding) {
        let json = JSON(data: data)
        println(json)
   }
}) 

但我对 JSON 中返回的 url 有疑问,返回方式如下:

"url_image" : "path1\/path2\/path3\/path4\/path5\/p\/1342.jpg"

我可以格式化它,但我想知道它是否与编码传递给 Alamofire 或其他东西有关,我该如何修复它。

非常感谢任何帮助。

【问题讨论】:

    标签: json swift alamofire swifty-json


    【解决方案1】:

    删除所有反斜杠 () 是一种不安全的方法,但它适用于您的情况。获取 URL 并删除反斜杠,然后将其用作 URL 路径以附加到您的 URL。因为它们是路径,连续的反斜杠可能不会在这里发生,所以只需替换所有反斜杠即可。

    【讨论】:

    • 我知道我可以格式化,请阅读我的问题,但我想知道为什么会这样?
    • @VictorSigler 发生这种情况是因为他们插入反斜杠来分隔潜在的不安全字符。如果我有一个字符串并且字符串中有一个引号,我需要分隔该字符,例如“somestring\”something”。
    猜你喜欢
    • 2014-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    • 1970-01-01
    • 2019-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多