0

是否有人对通过 iPhone 使用他们的 REST API 从 Amazon S3 服务获取或发布到 Amazon S3 服务有任何建议。看起来不可能,但我可能读错了文档。

预先感谢您的帮助!

L.

4

2 回答 2

3

在一般情况下,我建议使用ASIHttpRequest,它有很多内置功能(也兼容 REST)和很多东西,比使用 NSURLConnection 更轻松。

它还具有开箱即用的S3 支持。

于 2009-06-17T07:03:47.860 回答
2

你应该能够使用 NSURLRequest 的东西来做你想做的事。

NSMutableData* _data = nil;

- (IBAction) doIt:(id)sender {
    NSURL* url = [NSURL URLWithString: @"http://theurl.com/"];
    NSMutableURLRequest* req = [NSMutableURLRequest requestWithURL: url];
    NSURLConnection* con = [NSURLConnection connectionWithRequest: req delegate: self];
    NSData* body = [@"body of request" dataUsingEncoding: NSUTF8StringEncoding];

    _data = [NSMutableData new];
    [req setHTTPMethod: @"POST"];
    [req setHTTPBody: body];
    [con start];
}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    [_data appendData: data];
}

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
    NSString* result = [[[NSString alloc] initWithData: _data encoding: NSUTF8StringEncoding] autorelease];

    // process your result here
    NSLog(@"got result: %@", result);
}

这没有任何错误检查,并且 _data 变量应该存储在实例变量中,但一般的想法应该适合你。您可能还需要设置一些请求标头来告诉服务器正文数据采用什么编码等等。

于 2009-06-16T23:22:50.313 回答