Gegevens direct in enquêtelinks insluiten

Het proces in het kort

  1. Schakel Gepersonaliseerde links in voor een kanaal
  2. Genereer een ondertekende payload met een standaard jwt-bibliotheek en gebruik het shared secret (gedeeld geheim) uit de vorige stap
  3. Voeg het token toe als payload-parameter aan de enquêtelink

Token-formaat

Als de payload een veld bevat met de naam id, dan wordt dit beschouwd als een unieke identifier voor het antwoord.

Bijvoorbeeld:

  • Indien ingesteld op order-ID - dan kan er met deze payload slechts één antwoord worden aangemaakt voor de combinatie van één enquête en order.
  • Indien ingesteld op gebruikers-ID - dan kan de gebruiker de enquête slechts één keer invullen.
  • In de beheerinterface genereren we altijd een unieke ID - dit betekent dat de gebruiker één keer kan antwoorden met dezelfde link.

Codevoorbeeld:

import jwt from "jsonwebtoken";

const secret = "SHARED SECRET"; // Van de pagina distributiekanalen
const data = {
    id: "123456",
    // alle extra attributen worden context voor de enquête
    data: "example",
};

// Dit is server-code. Plaats het SHARED SECRET niet in de client-side code.
const payload = jwt.sign(data, secret, { expiresIn: "1h" });

// GEBRUIK
// https://youropinion.is/snap/xxx/c/yyy?payload=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
//      eyJpZCI6IjEyMzQ1Njc4OTAiLCJhZG1pbiI6dHJ1ZSwiaWF0IjoxNTE2MjM5MDIyfQ.
//      mIatWmJPRz4-NU7KWcjuOKNnfWUeLPqYhHb-R7FYunE