Visão geral
Iframe UniLink (sem backend)
A forma mais rápida de começar: basta copiar e colar o seu URL do UniLink.O que precisa
- Um fluxo de verificação da Didit (criado na Didit Console)
- O seu URL do UniLink (clique em Copy Link no seu fluxo)
Implementação
⚠️ Obrigatório: o atributo allow é obrigatório para o acesso à câmara durante a prova de vida.
Principais vantagens
- Configuração em menos de 1 minuto: sem backend, sem chaves de API
- Sem configuração: URL de retorno definido nas definições do fluxo
- Ideal para MVPs: comece de imediato
Iframe da sessão de API (com backend)
Para integrações avançadas que precisam de personalização por sessão.Quando usar
- Transmitir
vendor_dataoumetadatapersonalizados por sessão - Definir URLs de retorno diferentes por sessão
- Acompanhar sessões no servidor antes de a verificação começar
- Associar sessões aos seus IDs de utilizador
Implementação
Passo 1: criar uma sessão (backend) A resposta de criação de sessão usa um campo chamadourl. Use-o como src do iframe.
Escutar eventos (postMessage)
A página de verificação envia eventos para a janela principal. Cada mensagem tem este envelope:event.data.data.sessionId, e não event.data.sessionId:
didit:ready ({ sessionId }), didit:started, didit:step_started / didit:step_completed / didit:step_changed ({ step, ... }), didit:status_updated ({ status }), didit:completed ({ sessionId, status }), didit:cancelled, didit:error ({ error, step? }), didit:close_request e didit:layout ({ contentHeight, colorScheme, dir }, ver abaixo). A referência de eventos do SDK JavaScript lista os eventos de verificação disponíveis como callbacks tipados. A partir da versão 0.5.0, o SDK trata das mensagens de layout internamente, em vez de as reencaminhar para onEvent.
Dimensionar o iframe a partir de didit:layout
A página de verificação indica quanto espaço precisa através de uma mensagem didit:layout. Envia uma ao carregar e outra sempre que a altura do conteúdo, o tema ou a direção do texto mudam:
Para receber
didit:layout no seu próprio iframe, adicione sdk_presentation=embedded ao URL de verificação. A partir da versão 0.5.0, o SDK JavaScript define a apresentação por si. Sem um parâmetro de apresentação, a página usa o layout autónomo e não envia mensagens de layout.colorScheme e dir para alinhar quaisquer controlos que desenhe em torno do iframe com o tema e a direção do texto da página.
Se a ligação do utilizador cair, a página mostra um ecrã «Sem ligação à Internet» que se fecha sozinho assim que a ligação for restabelecida. Se o utilizador escolher Sair da verificação nesse ecrã, a página envia didit:error com error: "network_error" e, em seguida, didit:cancelled. Feche o iframe ao receber didit:cancelled.
Implementação do modal
Para uma experiência de modal elegante que se sobrepõe à sua página:HTML/CSS/JS
Componente React
Um componente React reutilizável para verificação em modal:Utilização
Componente Vue
Configuração
Permissões necessárias
Use esta lista completa de permissões para a captura, a localização, a cópia e a compatibilidade de conteúdo multimédia:
O atributo
allow delega permissões; não se sobrepõe à escolha do utilizador nem a um cabeçalho Permissions-Policy mais restritivo na sua página de acolhimento.
Tamanho do iframe
O fluxo de verificação adapta a disposição dos seus elementos ao tamanho do respetivo iframe. Dimensione o iframe para a janela em que é apresentado:
Para o intervalo intermédio, comece com 500px por 700px até chegar à primeira mensagem
didit:layout, com o mesmo limite de altura. O exemplo de didit:layout aplica os três tamanhos, incluindo os tamanhos de computador e de telemóvel antes de chegar qualquer mensagem.
Política de segurança de conteúdo (CSP)
Se utilizar CSP, adicione a Didit à diretivaframe-src:
Verificação entre dispositivos
O iframe InContext suporta automaticamente a verificação entre dispositivos:- O utilizador inicia a verificação no computador
- Se a câmara não estiver disponível, é apresentado um código QR
- O utilizador lê o código QR com o telemóvel
- O utilizador conclui a verificação no telemóvel
- O iframe do computador é atualizado automaticamente com o resultado
Resolução de problemas
A câmara não funciona
- Certifique-se de que o iframe inclui a lista completa de permissões
- Verifique se o seu site é servido através de HTTPS
- Confirme se o utilizador concedeu as permissões de câmara ao seu domínio
- Experimente o método Redirect se o acesso à câmara no iframe falhar
O iframe não carrega
- Verifique se existem problemas de Política de segurança de conteúdo (CSP)
- Adicione
https://verify.didit.meà diretivaframe-src - Verifique a consola do navegador para detetar erros
Mensagem postMessage não recebida
- Confirme que está a escutar a origem correta (
https://verify.didit.me, ou o seu domínio de marca branca) - Verifique se o ouvinte de eventos é adicionado antes de abrir o iframe
- Verifique o nome e a estrutura do evento: os tipos têm prefixo (
didit:completed, e nãoverification_complete) e o payload está aninhado emevent.data.data
Repositório de exemplos
Repositório no GitHub
Consulte o código-fonte e os exemplos no GitHub