Sample code for 30+ languages & platforms
Swift

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 Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = 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)

    let http = CkoHttp()!
    let req = CkoHttpRequest()!

    req.httpVerb = "POST"
    req.path = "/auth/signin"
    req.charset = "utf-8"
    req.contentType = "application/x-www-form-urlencoded"

    req.addParam(name: "grant_type", value: "password")
    req.addParam(name: "username", value: "YourUsername")
    req.addParam(name: "password", value: "YourPassword")

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

    let resp = CkoHttpResponse()!
    success = http.httpReq(url: "https://auth.fatturazioneelettronica.aruba.it/auth/signin", request: req, response: resp)
    if success == false {
        print("\(http.lastErrorText!)")
        return
    }

    print("Response Status: \(resp.statusCode.intValue)")
    print("Response Body: ")
    print("\(resp.bodyStr!)")

}