Sample code for 30+ languages & platforms
Unicode C

Send XMLHttpRequest and Get Response

See more HTTP Examples

Demonstrates how to send an HTTP XML request and retrieve the response.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkHttpW.h>
#include <C_CkHttpResponseW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkHttpW http;
    const wchar_t *xmlStr;
    const wchar_t *urlEndpoint;
    const wchar_t *xmlCharset;
    HCkHttpResponseW resp;

    success = FALSE;

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

    http = CkHttpW_Create();

    // The XML sent in the body of the request is application
    // specified -- it should contain whatever the server-side
    // application is expecting..
    xmlStr = L"<?xml version=\"1.0\" encoding=\"UTF-8\"?><appXml><something>123</something></appXml>";

    urlEndpoint = L"http://www.chilkatsoft.com/xmlEcho.asp";
    xmlCharset = L"utf-8";

    resp = CkHttpResponseW_Create();
    success = CkHttpW_HttpStr(http,L"POST",urlEndpoint,xmlStr,xmlCharset,L"application/xml",resp);
    if (success == FALSE) {
        wprintf(L"%s\n",CkHttpW_lastErrorText(http));
        CkHttpW_Dispose(http);
        CkHttpResponseW_Dispose(resp);
        return;
    }

    // The raw HTTP request sent by the above call is:

    // POST /xmlEcho.asp HTTP/1.1
    // Content-Type: text/xml
    // Host: www.chilkatsoft.com
    // Accept: */*
    // Accept-Charset: ISO-8859-1,utf-8;q=0.7,*; q=0.7
    // Accept-Language: en-us,en;q=0.5
    // Accept-Encoding: gzip
    // Content-Length: 81
    // 
    // <?xml version="1.0" encoding="UTF-8"?><appXml><something>123</something></appXml>

    // Examine the Body of the HTTP response
    // This would be the XML response sent by the server.
    wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp));


    CkHttpW_Dispose(http);
    CkHttpResponseW_Dispose(resp);

    }