C
C
Demonstrate S3_UploadBytes
Demonstrates how to upload a file to the Amazon S3 service.Chilkat C Downloads
#include <C_CkHttp.h>
#include <C_CkBinData.h>
#include <C_CkByteData.h>
void ChilkatSample(void)
{
BOOL success;
HCkHttp http;
const char *bucketName;
const char *objectName;
const char *localFilePath;
const char *contentType;
HCkBinData jpgData;
HCkByteData jpgBytes;
success = FALSE;
// This example assumes the Chilkat HTTP API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttp_Create();
CkHttp_putAwsAccessKey(http,"AWS_ACCESS_KEY");
CkHttp_putAwsSecretKey(http,"AWS_SECRET_KEY");
bucketName = "chilkat.qa";
objectName = "images/sea_creatures/starfish.jpg";
localFilePath = "qa_data/jpg/starfish.jpg";
contentType = "image/jpg";
jpgData = CkBinData_Create();
success = CkBinData_LoadFile(jpgData,localFilePath);
if (!success) {
printf("Failed to load %s\n",localFilePath);
CkHttp_Dispose(http);
CkBinData_Dispose(jpgData);
return;
}
jpgBytes = CkByteData_Create();
success = CkBinData_GetBinary(jpgData,jpgBytes);
success = CkHttp_S3_UploadBytes(http,jpgBytes,contentType,bucketName,objectName);
if (success != TRUE) {
printf("%s\n",CkHttp_lastErrorText(http));
CkHttp_Dispose(http);
CkBinData_Dispose(jpgData);
CkByteData_Dispose(jpgBytes);
return;
}
printf("Success. File uploaded.\n");
CkHttp_Dispose(http);
CkBinData_Dispose(jpgData);
CkByteData_Dispose(jpgBytes);
}