NSURL与\n一起调用php文件

NSURL与\n一起调用php文件,php,ios,hyperlink,newline,nsurl,Php,Ios,Hyperlink,Newline,Nsurl,我正在使用下面的代码行来运行服务器上的php文件。问题是\n导致错误,并禁止调用php文件。但是当我删除\n时,它会工作 NSString *link = [[NSString alloc]initWithFormat:@"%@?message=%@",link,[@"hello world\nhello" stringByReplacingOccurrencesOfString:@" " withString:@"%20"]]; NSData *resultData = [NSDa

我正在使用下面的代码行来运行服务器上的php文件。问题是\n导致错误,并禁止调用php文件。但是当我删除\n时,它会工作

  NSString *link = [[NSString alloc]initWithFormat:@"%@?message=%@",link,[@"hello   world\nhello" stringByReplacingOccurrencesOfString:@" " withString:@"%20"]];
  NSData *resultData = [NSData dataWithContentsOfURL:[NSURL URLWithString:link]];
我不知道该怎么做才能让这一切顺利进行。还有什么我需要使用而不是\n的吗


谢谢

您可能应该通过使用来摆脱“
链接
”URL字符串中参数的疯狂字符。

尝试以下方法:

NSString *link = [[NSString alloc]initWithFormat:@"%@?message=hello world%@hello",link,@"\n"];
NSData *resultData = [NSData dataWithContentsOfURL:[NSURL URLWithString:link]];
NSString *link = [[NSString alloc]initWithFormat:@"%@?message=%@",link,@"hello   world\nhello"];
NSString *url = [link stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
NSData *resultData = [NSData dataWithContentsOfURL:[NSURL URLWithString:url]];
试试这个:

NSString *link = [[NSString alloc]initWithFormat:@"%@?message=hello world%@hello",link,@"\n"];
NSData *resultData = [NSData dataWithContentsOfURL:[NSURL URLWithString:link]];
NSString *link = [[NSString alloc]initWithFormat:@"%@?message=%@",link,@"hello   world\nhello"];
NSString *url = [link stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
NSData *resultData = [NSData dataWithContentsOfURL:[NSURL URLWithString:url]];

为什么这是正确的答案呢?
[link stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding]
返回
NSString
,但它被声明为
NSURL
?@graver good catch。正确的代码应该是
[NSURL URLWithString:[link stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding]