为了账号安全,请及时绑定邮箱和手机立即绑定

如何在NSURL中使用特殊字符?

如何在NSURL中使用特殊字符?

侃侃尔雅 2019-10-21 15:46:47
我的应用程序正在使用这样的NSURL:var url = NSURL(string: "http://www.geonames.org/search.html?q=Aïn+Béïda+Algeria&country=")当我尝试执行一个任务来从此NSURL获取数据时,如下所示:    let task = NSURLSession.sharedSession().dataTaskWithURL(url!, completionHandler: { (data: NSData!, response: NSURLResponse!, error: NSError!) -> Void in        if error == nil {            var urlContent = NSString(data: data, encoding: NSUTF8StringEncoding)            println("urlContent \(urlContent!)")        } else {            println("error mode")        }但是当我尝试从该地址获取数据时出现错误,尽管当我使用野生动物园去链接时:“ http://www.geonames.org/search.html?q =Aïn+Béïda+ Algeria&country =”我可以看到数据。我该如何解决?
查看完整描述

3 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

为什么URLFragmentAllowedCharacterSet呢?还有URLHostAllowedCharacterSetURLPasswordAllowedCharacterSetURLPathAllowedCharacterSetURLQueryAllowedCharacterSetURLUserAllowedCharacterSet 

查看完整回答
反对 回复 2019-10-21
?
MMMHUHU

TA贡献1834条经验 获得超8个赞

我使用此代码片段有两个问题:1. 永远不要一次编码整个查询字符串。某些字符保留为查询字符串部分(&,=等)之间的分隔符,并且如果组成这些查询部分的原始字符串包含这些字符中的任何一个,则您的方法将很难解决。2.您应该使用NSURLComponents构造查询字符串,而不是使用字符串串联。它更安全,并且避免您完全担心字符集。

查看完整回答
反对 回复 2019-10-21
  • 3 回答
  • 0 关注
  • 617 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信