Sample code for 30+ languages & platforms
Zig

RenderGet Example

Demonstrates the RenderGet method.

Chilkat Zig Downloads

Zig
const std = @import("std");
const chilkat = @import("chilkat");

pub fn main(init: std.process.Init) !void {
    const alloc = init.arena.allocator();

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

    const http = try chilkat.Http.init();
    defer http.deinit();

    // Perhaps add a custom header or two..
    http.setRequestHeader("x-exz-date", "20201012T235046Z");
    http.setRequestHeader("x-exz-id", "1234");

    // See the exact HTTP request that would be sent via the HttpNoBody method using the GET HTTP verb.
    // No request is actually sent to the server.
    const url = "https://www.example.com/someting?param1=123&param2=abc";
    const get_request = http.renderGet(alloc, url) catch {
        std.debug.print("{s}\n", .{try http.getLastErrorText(alloc)});
        return;
    };

    std.debug.print("{s}\n", .{get_request});

    // The rendered GET request is shown below.
    // (The Accept and Accept-Encoding headers are automatically added by default.)

    //     GET /someting?param1=123&param2=abc HTTP/1.1
    //     Host: www.example.com
    //     Accept: */*
    //     Accept-Encoding: gzip
    //     x-exz-date: 20201012T235046Z
    //     x-exz-id: 1234
}