我有一个问题,真的让我挠头.似乎没有合理的理由说明为什么会这样.如果我将字符串硬编码到NSURL中就可以了.但是,如果我传递一个NSString而不是它.我已经确认NSString与NSLog的硬编码字符串完全相同.
有效的代码.服务器返回200响应代码.
//NSString * urlStr = [NSString stringWithFormat:@"http://www.server.com/%@",monograph.uri];
NSURL *url = [NSURL URLWithString:@"http://www.server.com/api/monograph/com/3894.json"];
ASIHTTPRequest *request;
request = [ASIHTTPRequest requestWithURL:url];
[request setUsername:appDelegate.key];
[request setPassword:appDelegate.secret];
[request setDelegate:self];
[request startAsynchronous];
代码失败.服务器为此返回204响应代码:
NSString * urlStr = [NSString stringWithFormat:@"http://www.server.com/%@",monograph.uri];
NSURL *url = [NSURL URLWithString:urlStr];
ASIHTTPRequest *request;
request = [ASIHTTPRequest requestWithURL:url];
[request setUsername:appDelegate.key];
[request setPassword:appDelegate.secret];
[request setDelegate:self];
[request startAsynchronous];
当我NSLog urlStr它包含:
http://www.server.com/api/monograph/com/3894.json
我错过了什么?必须要有一些东西来解释它 – .-
问候,
码
编辑
检查两个字符串的长度,它们都是相同的长度,所以似乎不是白色空格或隐藏在那里的任何东西.
最佳答案 您是否检查过从字符串变量获取的NSURL对象是否为零?这可以帮助您回答问题的位置.
此外,您可以尝试转义字符串变量,只是通过stringWithFormat调用来填充有趣的东西.