Compartilhar via


Obter anexos de um item do Outlook a partir do Exchange

A API javaScript do Office inclui APIs para obter anexos e respetivos conteúdos a partir de mensagens e compromissos no Outlook. A tabela seguinte lista estas APIs de anexo, os modos do Outlook em que operam e o requisito mínimo da Caixa de Correio definido para que precisem de operar.

API Modos suportados do Outlook Conjunto de requisitos mínimo
Office.context.mailbox.item.attachments Leitura 1.1
Office.context.mailbox.item.getAttachmentsAsync Escrever 1.8
Office.context.mailbox.item.getAttachmentContentAsync Read
Escrever
1.8

Se o cliente do Outlook no qual o suplemento está em execução não suportar o conjunto de requisitos mínimo necessário, pode obter um anexo e os respetivos conteúdos diretamente a partir do Exchange. Selecione o separador para o ambiente do Exchange aplicável.

Nos ambientes Exchange Online, o seu suplemento tem de executar os seguintes passos para obter anexos diretamente a partir do Exchange.

  1. Obter um token de acesso para o Microsoft Graph.
  2. Obtenha o ID do item da mensagem ou compromisso aplicável.
  3. Utilize o Microsoft Graph para obter o anexo e as respetivas propriedades.

Cada passo é abordado nas secções seguintes.

Obter um token de acesso

O Microsoft Graph fornece acesso aos dados de correio do Outlook dos utilizadores. Antes de o suplemento obter dados do Microsoft Graph, primeiro tem de obter um token de acesso para autorização. Para obter um token de acesso, utilize a autenticação de aplicações aninhadas (NAA). Para saber mais sobre o NAA, consulte Ativar o SSO num Suplemento do Office através da autenticação de aplicações aninhadas (pré-visualização).

Obter o ID do item de correio

Para obter informações sobre um anexo com o Microsoft Graph, precisa do ID do item da mensagem ou compromisso que inclui o anexo. Utilize a API JavaScript do Office aplicável para obter o ID do item.

  • Modo de leitura: ligue para Office.context.mailbox.item.itemId. Em clientes outlook não móveis, uma vez que esta propriedade devolve um ID formatado para os Serviços Web exchange (EWS), tem de utilizar o método Office.context.mailbox.convertToRestId para converter o ID num formato REST que o Microsoft Graph pode utilizar.

    // Get the item ID of the current mail item in read mode and convert it into a REST format.
    const itemId = Office.context.mailbox.item.itemId;
    const restId = Office.context.mailbox.convertToRestId(itemId, Office.MailboxEnums.RestVersion.v2_0);
    
  • Compose modo: o método para obter o ID do item varia consoante o item de correio tenha sido guardado como rascunho.

    • Se o item tiver sido guardado, ligue para Office.context.mailbox.item.getItemIdAsync.

      // Get the item ID of the current mail item being composed.
      Office.context.mailbox.item.getItemIdAsync((result) => {
          if (result.status === Office.AsyncResultStatus.Failed) {
              console.error(result.error.message);
              return;
          }
      
          const itemId = result.value;
      });
      

      Dica

      O getItemIdAsync método foi introduzido no conjunto de requisitos da Caixa de Correio 1.8. Se o cliente do Outlook no qual o suplemento está em execução não suportar a Caixa de Correio 1.8, utilize Office.context.mailbox.item.saveAsync como este método foi introduzido na Caixa de Correio 1.3.

    • Se o item ainda não tiver sido guardado, ligue para Office.context.mailbox.item.saveAsync para iniciar a gravação e obter o ID do item.

      // Save the current mail item being composed to get its ID.
      Office.context.mailbox.item.saveAsync((result) => {
          if (result.status === Office.AsyncResultStatus.Failed) {
              console.error(result.error.message);
              return;
          }
      
          const itemId = result.value;
      });
      

      Observação

      Se o seu cliente do Outlook estiver no modo de cache, poderá demorar algum tempo até que o item guardado seja sincronizado com o servidor. Até o item ser sincronizado, a utilização do ID do item devolverá um erro.

Usar o Microsoft Graph

Depois de obter um token de acesso e o ID do item de correio que contém o anexo, pode agora fazer um pedido do Microsoft Graph. Para obter informações e exemplos sobre como obter um anexo com o Microsoft Graph, consulte Obter anexo.

Confira também