Objective-C
Objective-C
REST File Upload (multipart/form-data)
See more REST Examples
Demonstrates how to upload a file using multipart/form-data.Chilkat Objective-C Downloads
#import <CkoRest.h>
#import <CkoStream.h>
#import <NSString.h>
BOOL success = NO;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoRest *rest = [[CkoRest alloc] init];
// Connect to the HTTP server using TLS.
BOOL bTls = YES;
int port = 443;
BOOL bAutoReconnect = YES;
// Make sure to replace "www.chilkatsoft.com" with your domain..
success = [rest Connect: @"www.chilkatsoft.com" port: [NSNumber numberWithInt: port] tls: bTls autoReconnect: bAutoReconnect];
if (success != YES) {
NSLog(@"%@",rest.LastErrorText);
return;
}
CkoStream *fileStream = [[CkoStream alloc] init];
fileStream.SourceFile = @"qa_data/jpg/starfish.jpg";
[rest AddHeader: @"Content-Type" value: @"multipart/form-data"];
rest.PartSelector = @"1";
[rest AddHeader: @"Content-Type" value: @"image/jpg"];
[rest AddHeader: @"Content-Disposition" value: @"form-data; name=\"filename\"; filename=\"starfish.jpg\""];
[rest SetMultipartBodyStream: fileStream];
rest.PartSelector = @"0";
NSString *responseBody = [rest FullRequestMultipart: @"POST" uriPath: @"/the_uri_path_to_receive_the_upload"];
if (rest.LastMethodSuccess != YES) {
NSLog(@"%@",rest.LastErrorText);
return;
}
if ([rest.ResponseStatusCode intValue] != 200) {
NSLog(@"%@%d",@"Received error response code: ",[rest.ResponseStatusCode intValue]);
return;
}
NSLog(@"%@",@"File uploaded");