Sample code for 30+ languages & platforms
Unicode C

auth.fatturazioneelettronica.aruba.it GetToken

See more HTTP Misc Examples

Sample code to duplicate MSXML2.XMLHTTP.6.0 code to send a x-www-form-urlencoded POST.

Chilkat Unicode C Downloads

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

void ChilkatSample(void)
    {
    BOOL success;
    HCkHttpW http;
    HCkHttpRequestW req;
    HCkHttpResponseW resp;

    success = FALSE;

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

    // This example duplicates the following Microsoft FoxPro (XMLHTTP) code

    // Local loHttp As "MSXML2.XMLHTTP.6.0" && creazione oggetto per richieste HTTP
    // loHttp = Createobject("MSXML2.XMLHTTP.6.0")
    // 
    // LOCAL luser, lpassword
    // luser = "myuser" 
    // lpassword = "mypwd" 
    // Local lEsito 
    // With loHttp As MSXML2.XMLHTTP.6.0
    // 	.Open("POST", 'https://auth.fatturazioneelettronica.aruba.it/auth/signin' ,.F.) && URL del Cloud di Test da sostituire con quello di produzione
    // 	.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8") 
    // 	.setRequestHeader("Content-Length","53") 
    // 	.Send("grant_type=password&username="+luser+"&password="+lpassword) && faccio la POST con le variabili
    // 	Store .responsetext To lEsito && memorizzo la risposta del server
    // Endwith
    // 
    // Public oConnessione_Aruba
    // oConnessione_Aruba = nfjsonread(lEsito)

    http = CkHttpW_Create();
    req = CkHttpRequestW_Create();

    CkHttpRequestW_putHttpVerb(req,L"POST");
    CkHttpRequestW_putPath(req,L"/auth/signin");
    CkHttpRequestW_putCharset(req,L"utf-8");
    CkHttpRequestW_putContentType(req,L"application/x-www-form-urlencoded");

    CkHttpRequestW_AddParam(req,L"grant_type",L"password");
    CkHttpRequestW_AddParam(req,L"username",L"YourUsername");
    CkHttpRequestW_AddParam(req,L"password",L"YourPassword");

    // No need to set Content-Length because Chilkat always computes the actual content length and adds the header.

    resp = CkHttpResponseW_Create();
    success = CkHttpW_HttpReq(http,L"https://auth.fatturazioneelettronica.aruba.it/auth/signin",req,resp);
    if (success == FALSE) {
        wprintf(L"%s\n",CkHttpW_lastErrorText(http));
        CkHttpW_Dispose(http);
        CkHttpRequestW_Dispose(req);
        CkHttpResponseW_Dispose(resp);
        return;
    }

    wprintf(L"Response Status: %d\n",CkHttpResponseW_getStatusCode(resp));
    wprintf(L"Response Body: \n");
    wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp));


    CkHttpW_Dispose(http);
    CkHttpRequestW_Dispose(req);
    CkHttpResponseW_Dispose(resp);

    }