Sample code for 30+ languages & platforms
Unicode C

Examine HTTP Response Status Code and Text

See more REST Examples

Demonstrates how to examine the HTTP response status code and text when using the REST object.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkRestW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkRestW rest;
    BOOL bTls;
    int port;
    BOOL bAutoReconnect;
    const wchar_t *responseText;

    success = FALSE;

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

    rest = CkRestW_Create();

    //  We're going to check https://authenticationtest.com/HTTPAuth/
    bTls = TRUE;
    port = 443;
    bAutoReconnect = TRUE;
    success = CkRestW_Connect(rest,L"authenticationtest.com",port,bTls,bAutoReconnect);
    if (success != TRUE) {
        wprintf(L"%s\n",CkRestW_lastErrorText(rest));
        CkRestW_Dispose(rest);
        return;
    }

    //  Send a GET request
    responseText = CkRestW_fullRequestNoBody(rest,L"GET",L"/HTTPAuth/");
    if (CkRestW_getLastMethodSuccess(rest) != TRUE) {
        wprintf(L"%s\n",CkRestW_lastErrorText(rest));
        CkRestW_Dispose(rest);
        return;
    }

    //  The start line of an HTTP response, called the status line, contains the following information:
    //  
    //      The protocol version, usually HTTP/1.1.
    //      A status code, indicating success or failure of the request. Common status codes are 200, 404, or 302
    //      A status text. A brief, purely informational, textual description of the status code to help a human understand the HTTP message.
    //  
    //  A typical status line looks like: HTTP/1.1 404 Not Found.

    //  The ResponseStatusCode property contains the integer response code:
    wprintf(L"Response status code = %d\n",CkRestW_getResponseStatusCode(rest));

    //  The ResponseStatusText property contains the text (if any) that follows the status code on the status line.
    wprintf(L"Response status text = %s\n",CkRestW_responseStatusText(rest));

    //  In this case, the sample output is:
    //  
    //  Response status code = 401
    //  Response status text = Unauthorized


    CkRestW_Dispose(rest);

    }