Xcode NSURL请求中的双引号

Xcode NSURL请求中的双引号,xcode,null,couchdb,nsurl,double-quotes,Xcode,Null,Couchdb,Nsurl,Double Quotes,ApacheCouchDB要求密钥用双引号括起来:“,但是,当转义时,结果nsurl在登录到控制台时返回(null),结果响应(null)显然也是如此 代码如下: NSURL *url = [[NSURL alloc] initWithString:@"http://username:password@gcg.cloudant.com:5984/points/_design/user/_view/where?key=\"m0rph3v5\""]; 我还尝试使用%22而不是双引号,这也不起作用

ApacheCouchDB要求密钥用双引号括起来:“,但是,当转义时,结果nsurl在登录到控制台时返回(null),结果响应(null)显然也是如此

代码如下:

NSURL *url = [[NSURL alloc] initWithString:@"http://username:password@gcg.cloudant.com:5984/points/_design/user/_view/where?key=\"m0rph3v5\""];
我还尝试使用%22而不是双引号,这也不起作用


如何在请求url中成功添加双引号?

使用%22对我来说很有用。我使用以下代码行获取有效的NSURL对象:

NSURL *url = [[NSURL alloc] initWithString:@"http://username:password@gcg.cloudant.com:5984/points/_design/user/_view/where?key=%22m0rph3v5%22"];
奇怪的是,这样做不会逃过@符号。

IIRC它也应该被转义(%40)。

结果证明它与我使用的stringWithFormat有关,它试图将%22作为变量进行解密,从而破坏了url


使用nsmutablestring并附加关键变量证明工作正常:)

我确实得到了一个有效的url对象,但url结果如下:,从couchdb本身返回了一个错误的请求,因为“m0rph3v5”最终是20rph3v52