我想把一个xml文件内容放到一个URL中,是吗?

时间:2012-02-22 10:54:15

标签: iphone xml url-scheme

NSURL *url = [NSURL URLWithString:@"appName://<?xml version=\"1.0\" encoding=\"UTF-8\"?>"];

但是url = nil。我发现如果删除“&lt;”和“&gt;”迹象,没关系。 那么,两个标志不能在URL中使用?我应该用另一个替换标志吗?

谢谢!

3 个答案:

答案 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个字节,因为一些较旧的客户端或代理实现   可能无法正确支持这些长度。