Incorpore dados diretamente nos links de pesquisa
Processo de alto nível
- Ative
Links personalizadospara um canal - Gere um payload assinado com a biblioteca
jwtpadrão, usando osegredo partilhadodo passo anterior - Anexe o
tokencomo parâmetropayloadao link da pesquisa
Formato do token
Se o payload contiver um campo chamado id, este será considerado um identificador único para a resposta.
Por exemplo:
- Se definido como ID do pedido - então, com este payload, apenas uma resposta pode ser criada para uma única combinação de pesquisa e pedido.
- Se o ID for definido como ID do utilizador - então o utilizador pode preencher a pesquisa apenas uma vez.
- na interface de administração, geramos sempre um ID único - isto significa que o utilizador pode responder apenas uma vez com o mesmo link.
Exemplo de código:
import jwt from "jsonwebtoken";
const secret = "SHARED SECRET"; // Da página de canais de partilha
const data = {
id: "123456",
// quaisquer atributos adicionais tornar-se-ão o contexto para a pesquisa
data: "exemplo",
};
// Este é código do lado do servidor. Não coloque o SEGREDO PARTILHADO no código do lado do cliente.
const payload = jwt.sign(data, secret, { expiresIn: "1h" });
// UTILIZAÇÃO
// https://youropinion.is/snap/xxx/c/yyy?payload=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
// eyJpZCI6IjEyMzQ1Njc4OTAiLCJhZG1pbiI6dHJ1ZSwiaWF0IjoxNTE2MjM5MDIyfQ.
// mIatWmJPRz4-NU7KWcjuOKNnfWUeLPqYhHb-R7FYunE