[Alpha]{class="badge informative"}
Visão geral dos métodos
O SDK do Servidor fornece seus recursos como métodos no objeto que createInstance retorna. Se você tiver usado o Web SDK, esses métodos corresponderão aos comandos do Web SDK, mas eles serão chamados de forma diferente:
alloy("sendEvent", { xdm })alloy.sendEvent({ xdm })alloy("getIdentity")alloy.getIdentity()O Web SDK usa uma única função que toma o nome do comando como uma string, para que uma página possa enfileirar comandos antes que a biblioteca termine de ser carregada. Um servidor carrega a biblioteca antes de lidar com qualquer solicitação, de modo que o SDK do servidor usa métodos regulares, que o editor pode sugerir e verificar conforme você digita.
Métodos disponíveis methods
forRequest identificadorPara tráfego de visitantes, chame métodos em um identificador forRequest em vez de na instância de nível superior. Consulte Instâncias e solicitações.
Tratar resultados results
Todos os métodos exceto forRequest retornam uma promessa. A promessa é resolvida com um objeto de resultado quando o método é bem-sucedido e rejeita com um Error quando falha. Use await com try...catch ou use then e catch:
try {
const result = await visitor.sendEvent({
xdm: {
eventType: "web.webpagedetails.pageViews",
identityMap: {
Email: [{ id: "visitor@example.com", primary: true }]
}
}
});
console.log("Propositions", result.propositions);
} catch (error) {
console.error("sendEvent failed", error.message);
}
O conteúdo do objeto result depende do método. A página de cada método descreve seu objeto de resultado. Alguns métodos, como setConsent, resolvem com um objeto vazio.
O resultado também depende do consentimento do visitante. Se o visitante recusou a participação, métodos como sendEvent resolvem com um objeto vazio sem enviar nada para o Adobe.
Erros errors
Um método é rejeitado nos seguintes casos, entre outros:
- Opções inválidas: o SDK valida todas as opções antes de enviar qualquer item. Uma opção desconhecida ou com erro ortográfico, ou um valor do tipo errado, é rejeitada com uma mensagem que nomeia o problema, como
'bogus': Unknown field. - Falhas de autenticação: se o SDK não puder obter um token de acesso, o método será rejeitado com uma mensagem que inclui
Failed to acquire an IMS access token. Consulte Autenticação. - Erros de Edge Network: se o Edge Network rejeitar a solicitação, por exemplo, porque o evento não tem identidade primária, o método será rejeitado com o erro que o Edge Network retornou.
- Falhas de rede: se o servidor não conseguir acessar o Adobe, o método será rejeitado com o erro de rede subjacente.
forRequest não retorna uma promessa. Retorna um identificador imediatamente ou emite um erro se configure ainda não tiver sido resolvido.
Dependendo do tempo de execução e de como ele é configurado, uma rejeição de promessa sem tratamento pode interromper o processo do servidor ou falhar a solicitação. Sempre trate das rejeições dos métodos do SDK, para que um problema ao enviar dados para o Adobe não interrompa a resposta que seu servidor envia ao visitante.