Sample code for 30+ languages & platforms
Delphi ActiveX

Get a JWS Unprotected Header

See more JSON Web Signatures (JWS) Examples

Demonstrates Jws.GetUnprotectedH, which copies the optional unprotected header of a signature into a JsonObject.

Background. The unprotected header is present only in JSON serialization forms that carry one. It is not covered by the signature.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
var
success: Integer;
jws: TChilkatJws;
jwsCompact: WideString;
json: TChilkatJsonObject;

begin
success := 0;

jws := TChilkatJws.Create(Self);

//  Load the JWS compact serialization.
jwsCompact := 'eyJhbGciOiJIUzI1NiJ9.VGhpcyBpcyB0aGUgY29udGVudCB0byBzaWduLg.<signature>';
success := jws.LoadJws(jwsCompact);
if (success = 0) then
  begin
    Memo1.Lines.Add(jws.LastErrorText);
    Exit;
  end;

//  Copy the optional unprotected header of signature 0 into a JsonObject.  This applies to JWS in a
//  JSON serialization form that carries an unprotected header.
json := TChilkatJsonObject.Create(Self);
success := jws.GetUnprotectedH(0,json.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(jws.LastErrorText);
    Exit;
  end;

json.EmitCompact := 0;
Memo1.Lines.Add(json.Emit());