Sample code for 30+ languages & platforms
Zig

Get the JWS Payload as a String

See more JSON Web Signatures (JWS) Examples

Demonstrates Jws.GetPayload, which returns the payload of a loaded JWS as text, decoded using the given charset.

Background. In practice, validate the signature before trusting the payload. Getting the payload retrieves the signed content.

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();

    const jws = try chilkat.Jws.init();
    defer jws.deinit();

    // Load the JWS compact serialization.
    const jws_compact = "eyJhbGciOiJIUzI1NiJ9.VGhpcyBpcyB0aGUgY29udGVudCB0byBzaWduLg.<signature>";
    jws.loadJws(jws_compact) catch {
        std.debug.print("{s}\n", .{try jws.getLastErrorText(alloc)});
        return;
    };

    // Return the JWS payload as text, decoded using the given charset.
    const payload = jws.getPayload(alloc, "utf-8") catch {
        std.debug.print("{s}\n", .{try jws.getLastErrorText(alloc)});
        return;
    };

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