如何使用AFNetworking通过Post请求在服务器上发送NSData?

时间:2015-07-27 08:43:11

标签: ios objective-c post afnetworking nsdata

我想使用AFNetworking在服务器上发送数据。我想发送NSData而不是json参数。任何人都可以建议如何使用NSData在服务器上发送AFNetworking

1 个答案:

答案 0 :(得分:1)

您可以在AFHTTPRequestOperationManager

中使用此方法
- (AFHTTPRequestOperation *)POST:(NSString *)URLString
                      parameters:(id)parameters
       constructingBodyWithBlock:(void (^)(id <AFMultipartFormData> formData))block
                         success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success
                         failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure;

您使用该方法的方式是:

[self POST:@"http://myurl.com" parameters:@{} constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
    // attach the NSData to `formData`
} success:^(NSURLSessionDataTask *task, id responseObject) {
    // Handle Success
} failure:^(NSURLSessionDataTask *task, NSError *error) {
    // Handle Error
}];

为了附加数据,您可以在AFMultipartFormData协议

中使用此方法
- (void)appendPartWithFormData:(NSData *)data
                          name:(NSString *)name;