我正在编写一个需要从 Web 服务获取数据的 iPhone 应用程序。在该服务中,同一个变量可能有多个值,使用 [ ] 括号访问该变量。 (我不是 PHP 开发人员,但我知道这种方案在 PHP 服务中并不少见。)
所以示例请求可能如下所示:
example.com/service.php?id[]=1&id[]=2
我用来构成 URL 的代码如下所示:
NSString *string = @"http://example.com/service.php?id[]=1&id[]=2";
NSURL *url = [NSURL URLWithString:string];
NSMutableURLRequest *networkRequest = [NSMutableURLRequest requestWithURL:url];
...
问题是,在第二行之后,URL 被自动编码,所以 URL 真的试图访问看起来像这样:
example.com/service.php?id%5B%5D=1&id%5B%5D=2
因此,我的请求无法访问我想要的信息。有没有办法阻止 NSURL 编码我的 URL,以便它可以访问此 Web 服务?
最佳答案
在我的例子中,结果是与服务所有者的沟通揭示了导致问题的服务器上的异常行为,但我将其归因于 NSURL 对字符串的处理。我很抱歉,感谢您的回复。
关于iphone - 将 NSURL 与在其获取请求中使用方括号的 PHP Web 服务一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4871727/