(就问题而言,这确实是一个双重打击,因为确实有两个独立的问题,但它们有点属于在一起。)
第一个问题:
我将如何使用 POST 上传文件(我已经有一个包含文件内容的 NSData 对象),同时在NSProgressIndicator
?就像可以做 bytesReceived 一样NSURLDownload
,但这次跟踪已使用 POST 发送了多少字节。
第二个问题:
虽然我有这个NSData
数组,我将使用下面的代码来发送NSData
大批。在这里,我很困惑如何告诉它,例如,POST 值“文件”是NSData
目的。NSDictionary
可能会在这里完成这项工作,但我现在无法访问我的电脑和可爱的苹果文档。:
NSMutableURLRequest* post = [NSMutableURLRequest requestWithURL: [NSURL URLWithString:@"http://yourdomain.com/post.php"]];
[post setHTTPMethod: @"POST"];
[post setHTTPBody:myFileNSData];
NSURLResponse* response;
NSError* error;
NSData* result = [NSURLConnection sendSynchronousRequest:post returningResponse:&response error:&error];
NSLog(@"%@", [[[NSString alloc] initWithData:result encoding:NSASCIIStringEncoding] autorelease]);
我将不胜感激任何帮助。
注意 - 不幸的是,这篇文章仅具有历史意义,遗憾的是,ASIHttpRequest 在几年后停止了开发。对社会来说是一场悲剧。
今天(2014 年)的最佳答案是:“简单地说,您必须使用可用的库之一来执行此操作。”
当有完美的库存在并且背后有超过 10 个人年的开发经验时,“推出自己的库”实际上是疯狂的。所以,找到一个库(遗憾的是不再是 ASIHttpRequest 了!)希望它有帮助!
只需使用 ASIHttpRequest 即可。它是所有 iOS 系统中最常用的库,也是 Mac 上常用的网络库。
进度跟踪是内置的。使用起来非常简单。
如果可以的话,别忘了给他捐点小钱——如果他停止开发,我们就都吃饱了!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)