我是ASIHTTPRequest中的COMPUME DUMMY。我刚刚下载了该库并将其添加到我的项目中,现在我正试图了解使用它的基础知识。我找到了一些很好的示例here

这个小教程是关于将图像上传到服务器的。我尝试了一下,似乎一切正常(但是我对[request responseString]返回的NSString感到困惑,它返回了整个网页的HTML代码),但我想知道如何从中下载图像(或上传的任何内容)服务器。经过一番搜索,我发现this,它没有给我任何答案,只有更多问题,因为对我来说还很不清楚。
让我列举一下我的问题:

1)您能否向我提供一些代码,以显示如何从服务器下载数据(无论是哪种数据:图像,字符串,数字等)?

2)我是否应该知道服务器端的php代码才能与服务器一起使用?

3)如果是-我怎么知道服务器端的PHP代码?

4)如果通过php脚本或任何其他方式处理请求,这有多重要?

5)responseString的作用是什么?可以返回巨大的HTML代码吗?

6)主要问题。 ASIHTTPRequest是否有一个很好的教程?诸如“ASIHTTPRequest for Dummies”之类的东西?我找到了官方文档here,但它对这些内容的解释确实很差,我只是找不到任何其他教程。

迫切需要任何帮助。

最佳答案



在这里,您可以找到一个非常基本的POST示例:

NSURL *url = [NSURL URLWithString:@"http://localhost/webroot/index.php/test/signUp"];

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request addPostValue:@"Raul" forKey:@"name"];
[request addPostValue:@"Hello World" forKey:@"message"];

[request setCompletionBlock:^{
    NSString *responseString = [request responseString];
    NSLog(@"Response: %@", responseString);
}];
[request setFailedBlock:^{
    NSError *error = [request error];
    NSLog(@"Error: %@", error.localizedDescription);
}];

[request startAsynchronous];

它使用块,因此所有功能都可以很好地打包在一个函数中,而您不必处理委托(delegate)和其他事务。 (source)

如果您只想获取页面,则可以使用:
NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setCompletionBlock:^{
    NSString *responseString = [request responseString];
    NSLog(@"Response: %@", responseString);
}];
[request setFailedBlock:^{
    NSError *error = [request error];
    NSLog(@"Error: %@", error.localizedDescription);
}];

[request startAsynchronous];



绝对没有必要。



不适用



服务器所使用的语言也不相关。



responseString包含服务器作为NSString发送回给您的所有数据。可能很大...



我不知道您所说的“傻瓜教程”;您应该尝试并遵循网站上的文档;它们可能看起来很复杂,但实际上并非如此。

另一方面,您可能已经知道:development of ASIHTTP has been ceased。如果您只是开始学习它,那么您最好考虑考虑替代方法。查看链接页面上的一些替代方法。

关于iphone - ASIHTTPRequest for Dummies,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8256926/

10-09 08:05
查看更多