NSURL *url = [NSURL URLWithString:@"appName://<?xml version=\"1.0\" encoding=\"UTF-8\"?>"];
但是url = nil。我发现如果删除“&lt;”和“&gt;”迹象,没关系。 那么,两个标志不能在URL中使用?我应该用另一个替换标志吗?
谢谢!
答案 0 :(得分:2)
我解决了这个问题。 在我做NSURL之前* url = [NSURL URLWithString:@“....”]; 我先做:
NSString *urlStr = [string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
当在接收方解析这个网址时,我首先做:
NSString *urlString = [[url absoluteString] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; // url is a NSURL
答案 1 :(得分:1)
为什么不将文档张贴在请求正文中?
GET请求不是为此而设计的。如果文档中有UTF-8字符,则可能会遇到困难。
同样What is the maximum length of a URL in different browsers?意味着最多2083个字符。
您正处于一个非常依赖浏览器/代理的场景中。
答案 2 :(得分:0)
理论上是的。您可以使用urlEncode执行此操作。 HTTP协议不对URL的长度设置任何限制。
RFC说:注意:服务器应该谨慎依赖URI长度 超过255个字节,因为一些较旧的客户端或代理实现 可能无法正确支持这些长度。