Zig
Zig
HTTP POST with some Params in URL and others in application/x-www-form-urlencoded Body
See more HTTP Examples
Demonstrates show to send an HTTP POST with some params in the URL, and others in the application/x-www-form-urlencoded BodyChilkat Zig Downloads
const std = @import("std");
const chilkat = @import("chilkat");
pub fn main(init: std.process.Init) !void {
const alloc = init.arena.allocator();
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Imagine a URL that contains two params: one named "xyz" and one named "name".
// We want to send a POST to it, but with 2 additional params in the body of the request.
const http = try chilkat.Http.init();
defer http.deinit();
// Provide a session log path so we can visually verify the exact request sent.
// (This is only for debugging purposes.)
http.setSessionLogFilename("c:/temp/httpLog.txt");
// Create an HTTP request that has two additional params
const req = try chilkat.HttpRequest.init();
defer req.deinit();
req.setHttpVerb("POST");
req.setPath("/echoPost.asp?xyz=123&name=matt");
req.addParam("sport", "tennis");
req.addParam("tournament", "French Open");
// Send the HTTP POST and get the response.
const resp = try chilkat.HttpResponse.init();
defer resp.deinit();
http.httpSReq("www.chilkatsoft.com", 80, false, req, resp) catch {
std.debug.print("{s}\n", .{try http.getLastErrorText(alloc)});
return;
};
std.debug.print("{s}\n", .{try resp.getBodyStr(alloc)});
std.debug.print("Success.\n", .{});
}