Sample code for 30+ languages & platforms
Zig

QuickDeleteStr Example

Sends a DELETE request to a URL. The URL can potentially include params, and custom request headers can be added.

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();
    var status_code: i32 = 0;

    // Specifiy a session log file so we can see the exact request/response
    http.setSessionLogFilename("c:/aaworkarea/sessionLog.txt");

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

    // Send a DELETE request to https://www.example.com/someting?param1=123&param2=abc
    const url = "https://www.example.com/someting?param1=123&param2=abc";
    const reponse_body_str = http.quickDeleteStr(alloc, url) catch {
        // This will happen if the response status code was 400 or greater,
        // or if the request could not be sent, or if no response was received.
        status_code = http.getLastStatus();
        std.debug.print("Response status: {d}\n", .{status_code});

        if (status_code == 0) {
            // There was an error in communications.
            std.debug.print("{s}\n", .{try http.getLastErrorText(alloc)});
        } else {
            // We received a response status code indicating failure.
            // Examine the response body.
            std.debug.print("{s}\n", .{try http.getLastResponseBody(alloc)});
        }

        return;
    };

    // The DELETE request that is sent looks like this.
    // The Accept and Accept-Encoding headers are automatically added by default.

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

    // Get the response status
    status_code = http.getLastStatus();
    std.debug.print("Response status: {d}\n", .{status_code});

    // Show the response body
    std.debug.print("{s}\n", .{reponse_body_str});
}