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 <CkHttpW.h>
#include <CkHttpRequestW.h>
#include <CkHttpResponseW.h>

void ChilkatSample(void)
    {
    bool 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)

    CkHttpW http;
    CkHttpRequestW req;

    req.put_HttpVerb(L"POST");
    req.put_Path(L"/auth/signin");
    req.put_Charset(L"utf-8");
    req.put_ContentType(L"application/x-www-form-urlencoded");

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

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

    CkHttpResponseW resp;
    success = http.HttpReq(L"https://auth.fatturazioneelettronica.aruba.it/auth/signin",req,resp);
    if (success == false) {
        wprintf(L"%s\n",http.lastErrorText());
        return;
    }

    wprintf(L"Response Status: %d\n",resp.get_StatusCode());
    wprintf(L"Response Body: \n");
    wprintf(L"%s\n",resp.bodyStr());
    }