Sample code for 30+ languages & platforms
C

HTTP GET with Custom Header and OAuth2 Bearer Token

See more HTTP Examples

Demonstrate how to send a GET request with customer headers and an "Authorization: Bearer " header.

Chilkat C Downloads

C
#include <C_CkHttp.h>
#include <C_CkStringBuilder.h>
#include <C_CkJsonObject.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkHttp http;
    const char *url;
    HCkStringBuilder sb;
    HCkJsonObject json;

    success = FALSE;

    // This example requires the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    http = CkHttp_Create();

    // Setting the AuthToken property causes the "Authorization: Bearer <token>" header to be adeded.
    CkHttp_putAuthToken(http,"Just_the_access_token_here");

    // Add one or more custom headers..
    CkHttp_SetRequestHeader(http,"X-Tenant-ID","value goes here");
    CkHttp_SetRequestHeader(http,"blah-blah-blah","value goes here");

    url = "https://www.example.com/abc/123?x=something&y=someOtherThing";

    // Send the GET request and get the response body in the StringBuilder object.
    sb = CkStringBuilder_Create();
    success = CkHttp_QuickGetSb(http,url,sb);
    if (success != TRUE) {
        printf("%s\n",CkHttp_lastErrorText(http));
        CkHttp_Dispose(http);
        CkStringBuilder_Dispose(sb);
        return;
    }

    printf("response status code: %d\n",CkHttp_getLastStatus(http));
    printf("response body:\n");
    printf("%s\n",CkStringBuilder_getAsString(sb));

    // If the response contains JSON, you can load it into a Chilkat JSON object...
    json = CkJsonObject_Create();
    CkJsonObject_LoadSb(json,sb);
    CkJsonObject_putEmitCompact(json,FALSE);
    printf("%s\n",CkJsonObject_emit(json));


    CkHttp_Dispose(http);
    CkStringBuilder_Dispose(sb);
    CkJsonObject_Dispose(json);

    }