NSURL *url = [[NSURL alloc] initWithString:@"http://nyxmyx.com/Kinkey/KinkeyPHP/lastidretrieve.php"];
NSData *data = [url resourceDataUsingCache:YES];
NSString *string = [[NSString alloc] initWithData:data encoding:NSMacOSRomanStringEncoding];
NSLog(@"result FOR ID %@",string);
我在didenterBackgroundMethod.In中使用此代码,我只想调用lastidretrieve.php,它返回一个字符串的响应。我收到错误,因为"接收器类型nsurl for instance message没有声明一个方法selector resourceDataUsingCache" .i对此错误没有任何想法。
答案 0 :(得分:0)
阅读NSURL
的文档就足够了。不推荐使用此方法。您应该使用[[NSData alloc] initWithContentsOfURL:url]
代替。
答案 1 :(得分:0)
使用此代码代替您提供字符串输出的代码,然后您必须格式化该字符串以获得disired输出。
NSString *post =@"";
NSURL *url=[NSURL URLWithString:@"http://nyxmyx.com/Kinkey/KinkeyPHP/lastidretrieve.php"];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody:postData];
NSError *error = [[NSError alloc] init];
NSHTTPURLResponse *response = nil;
NSData *urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
if ([response statusCode] >=200 && [response statusCode] <300)
{
//NSData *data = [responseData resourceDataUsingCache:YES];
NSString *string = [[NSString alloc] initWithData:urlData encoding:NSMacOSRomanStringEncoding];
NSLog(@"responseData-%@",string);
}
输出将是这样的。
responseData-1995<br />prabu<br />1231231233<br />antab<br />8080808080<br />1360738531881.jpg<br />No
<强>更新强>
如果您想在网址中添加参数,请将帖子字符串更改为此。
NSString *post =[[NSString alloc] initWithFormat:@"yourArg=%@",yourArg];