C++
C++
Get Response Header for Method that does not Return HttpResponse Object
Demonstrates how to get the response header and individual response header fields for a method that does not return an HTTP response object. (If a method returns an HHTTP response object, then the response header information should be obtained from the response object.)Chilkat C++ Downloads
#include <CkHttp.h>
#include <CkMime.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.
CkHttp http;
const char *strHtml = http.quickGetStr("https://www.duckduckgo.com/");
if (http.get_LastMethodSuccess() == false) {
std::cout << http.lastErrorText() << "\r\n";
return;
}
std::cout << http.lastResponseHeader() << "\r\n";
// Here's a sample HTTP response header:
// Server: nginx
// Date: Wed, 30 Sep 2020 13:13:02 GMT
// Content-Type: text/html; charset=UTF-8
// Transfer-Encoding: chunked
// Connection: keep-alive
// Vary: Accept-Encoding
// ETag: W/"5f7371f4-1683"
// Strict-Transport-Security: max-age=31536000
// X-Frame-Options: SAMEORIGIN
// Content-Security-Policy: default-src https: blob: data: 'unsafe-inline' 'unsafe-eval'; frame-ancestors 'self'
// X-XSS-Protection: 1;mode=block
// X-Content-Type-Options: nosniff
// Referrer-Policy: origin
// Expect-CT: max-age=0
// Expires: Wed, 30 Sep 2020 13:13:01 GMT
// Cache-Control: no-cache
// Content-Encoding: gzip
// We can load it into a Chilkat MIME object to get header field values:
CkMime mime;
success = mime.LoadMime(http.lastResponseHeader());
if (success == false) {
std::cout << mime.lastErrorText() << "\r\n";
return;
}
// Get MIME header field values using Chilkat MIME...
std::cout << "----" << "\r\n";
std::cout << "ETag: " << mime.getHeaderField("ETag") << "\r\n";
}