Unicode C++
Unicode C++
HTTPS PUT application/x-www-form-urlencoded
See more HTTP Examples
Demonstrates two ways of sending an HTTPS PUT application/x-www-form-urlencoded request.Chilkat Unicode C++ Downloads
#include <CkHttpW.h>
#include <CkHttpResponseW.h>
#include <CkHttpRequestW.h>
void ChilkatSample(void)
{
bool success = false;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkHttpW http;
// The 1st example sends a PUT with the query params in the URL.
// The body of the request will be empty.
const wchar_t *url = L"https://example.com/leads/12345678?uid=XXXX&apikey=YYYYYY¬es=Test_Note";
// Sends the following request:
// PUT /leads/12345678?uid=XXXX&apikey=YYYYYY¬es=Test_Note HTTP/1.1
// Host: example.com
// Accept: */*
// Accept-Encoding: gzip
// Content-Length: 0
//
CkHttpResponseW resp;
success = http.HttpStr(L"PUT",url,L"",L"",L"application/x-www-form-urlencoded",resp);
if (success == false) {
wprintf(L"%s\n",http.lastErrorText());
return;
}
wprintf(L"Response status code = %d\n",resp.get_StatusCode());
wprintf(L"Response body: %s\n",resp.bodyStr());
// -----------------------------------------------------------------------
// Now we send the same request, but instead the query params are in the HTTP request body.
CkHttpRequestW req;
req.put_HttpVerb(L"PUT");
req.put_Path(L"/leads/12345678");
req.AddParam(L"uid",L"XXXX");
req.AddParam(L"apikey",L"YYYYYY");
req.AddParam(L"notes",L"Test_Note");
// Sends the following request:
// POST /leads/12345678 HTTP/1.1
// Host: example.com
// Content-Type: application/x-www-form-urlencoded
// Content-Length: 38
//
// uid=XXXX&apikey=YYYYYY¬es=Test_Notereq.HttpVerb = "POST";
req.put_HttpVerb(L"POST");
req.put_ContentType(L"application/x-www-form-urlencoded");
success = http.HttpReq(L"https://example.com/leads/12345678",req,resp);
if (success == false) {
wprintf(L"%s\n",http.lastErrorText());
return;
}
wprintf(L"Response status code = %d\n",resp.get_StatusCode());
wprintf(L"Response body: %s\n",resp.bodyStr());
}