C
C
Get the JWS Payload into a StringBuilder
See more JSON Web Signatures (JWS) Examples
Demonstrates Jws.GetPayloadSb, which writes the payload of a loaded JWS as text into a StringBuilder, decoded using the given charset.
Background. In practice, validate the signature before trusting the payload.
Chilkat C Downloads
#include <C_CkJws.h>
#include <C_CkStringBuilder.h>
void ChilkatSample(void)
{
BOOL success;
HCkJws jws;
const char *jwsCompact;
HCkStringBuilder sbPayload;
success = FALSE;
jws = CkJws_Create();
// Load the JWS compact serialization.
jwsCompact = "eyJhbGciOiJIUzI1NiJ9.VGhpcyBpcyB0aGUgY29udGVudCB0byBzaWduLg.<signature>";
success = CkJws_LoadJws(jws,jwsCompact);
if (success == FALSE) {
printf("%s\n",CkJws_lastErrorText(jws));
CkJws_Dispose(jws);
return;
}
// Get the JWS payload as text into a StringBuilder, decoded using the given charset.
sbPayload = CkStringBuilder_Create();
success = CkJws_GetPayloadSb(jws,"utf-8",sbPayload);
if (success == FALSE) {
printf("%s\n",CkJws_lastErrorText(jws));
CkJws_Dispose(jws);
CkStringBuilder_Dispose(sbPayload);
return;
}
printf("%s\n",CkStringBuilder_getAsString(sbPayload));
CkJws_Dispose(jws);
CkStringBuilder_Dispose(sbPayload);
}