Delphi DLL
Delphi DLL
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 DLL Downloads
var
success: Boolean;
jws: HCkJws;
jwsCompact: PWideChar;
json: HCkJsonObject;
begin
success := False;
jws := CkJws_Create();
// Load the JWS compact serialization.
jwsCompact := 'eyJhbGciOiJIUzI1NiJ9.VGhpcyBpcyB0aGUgY29udGVudCB0byBzaWduLg.<signature>';
success := CkJws_LoadJws(jws,jwsCompact);
if (success = False) then
begin
Memo1.Lines.Add(CkJws__lastErrorText(jws));
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 := CkJsonObject_Create();
success := CkJws_GetUnprotectedH(jws,0,json);
if (success = False) then
begin
Memo1.Lines.Add(CkJws__lastErrorText(jws));
Exit;
end;
CkJsonObject_putEmitCompact(json,False);
Memo1.Lines.Add(CkJsonObject__emit(json));
CkJws_Dispose(jws);
CkJsonObject_Dispose(json);