println("viewDidLoad contact name \(contactName)")// i am giving Space here like 'James '
// println(countryCode)
// println(townCode)
var resultPage=false
let url: NSURL? = NSURL(string: "<URL>/searchContactsJSON?searchString=\(contactName)&towCode=\(townCode)&couCode=\(countryCode)") //I am getting error in this line....
如果我没有在参数中给出空间而不是工作正常......
有人可以帮助我解决上述问题吗?
谢谢,
答案 0 :(得分:4)
文件说:
返回值:使用URLString初始化的NSURL对象。如果URL字符串格式错误,则返回nil。 讨论
此方法要求URLString仅包含正确形成的URL中允许的字符。所有其他字符必须正确转义百分比。使用UTF-8编码解释任何百分比转义字符。
因此,如果你将一个空格传递给NSURL,它将产生nil,因为它是一个格式错误的字符串。
答案 1 :(得分:3)
你必须使用.stringByAddingPercentEscapesUsingEncoding
"http://www.domain.com/?z=your string".stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)! // "http://www.domain.com/?z=your%20string"