我的网址是http://sample_domain/sample.json?{ "language" : "en", "category" : "sports"}
我将此转换为NSURL对象,如下所示。
NSURL *url=[NSURL URLWithString:@"http://sample_domain/sample.json?{ "language" : "en", "category" : "sports"}"];
它返回nil到NSURL对象,我知道URL应该是来自apple文档的特定格式,否则它将被视为恶意软件站点并返回nil对象,
我的问题是如何通过苹果标准传递这些参数,以便它不会重新调整nil对象。
提前致谢。
答案 0 :(得分:1)
尝试
NSURL *url=[NSURL URLWithString:[@"http://sample_domain/sample.json?{ \"language\" : \"en\", \"category\" : \"sports\"}"
stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
我不确定为什么'''字符在你的例子中没有被转义,但我认为没有逃脱你的代码不应该编译。
你还需要(这是主要的问题)来替换url中非法的字符(例如':'和相应的百分比转义 - 这就是stringByAddingPercentEscapesUsingEncoding函数所做的。