Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: Programador
Adicione experiências de pré-visualização de ficheiros para que os utilizadores possam inspecionar conteúdos do SharePoint Embedded sem transferir ficheiros ou abrir uma experiência de edição completa do Office.
Conclua Abrir ficheiros do Office a partir da sua aplicação quando precisar de editar o Office. Utilize este artigo para pré-visualizações leves.
Compreender o fluxo de pré-visualização
O fluxo de pré-visualização tem dois passos:
- Chame o ponto final de pré-visualização do DriveItem do Microsoft Graph.
- Utilize o URL devolvido numa iframe ou nova página do browser.
O ponto final do Graph é:
POST https://graph.microsoft.com/{version}/drives/{driveId}/items/{itemId}/preview
Onde:
-
{version}é a versão do Microsoft Graph, comov1.0. -
{driveId}é o ID de contentor que começa comb!. -
{itemId}é o ID do DriveItem.
Para obter a referência de API canónica, veja Pré-visualizar um DriveItem.
Conhecer tipos de ficheiro suportados
O Microsoft 365 suporta pré-visualizações para muitos tipos de ficheiros, incluindo formatos de documento, imagem, vídeo e PDF comuns.
Os exemplos incluem:
- Ficheiros PDF.
- FICHEIRO JPG e outros ficheiros de imagem.
- MP4 e outros ficheiros de multimédia suportados.
- Ficheiros do Office suportados por experiências de pré-visualização do Microsoft 365.
Para obter a lista atual, consulte Tipos de ficheiro suportados para pré-visualizar ficheiros no OneDrive, SharePoint e Teams.
Observação
O suporte de tipo de ficheiro pode variar consoante a capacidade do serviço, a política de inquilino e a experiência do cliente. Processe sempre as falhas de pré-visualização corretamente.
Visualização nativa de PDF
A experiência de visualização de PDF nativa do SharePoint Embedded suporta a pesquisa no ficheiro, a visualização de comentários e notas autocolantes incorporadas no ficheiro e a impressão (adicionada em março de 2026). Estas capacidades estão disponíveis através do driveItem: API de pré-visualização nos pontos finais beta e v1.0 do Microsoft Graph.
Melhorar o pré-visualizador de PDF com parâmetros de consulta
Melhore o pré-visualizador de PDF do SharePoint Embedded ao acrescentar parâmetros de consulta à propriedade do webUrl driveItem. Para obter webUrl, chame a API GET driveItem, por exemplo GET /drives/{drive-id}/items/{item-id}?$select=webUrl.
Transmita parâmetros como uma cadeia de consulta codificada embed em JSON. Pode incluir um ou mais parâmetros no mesmo objeto.
<webUrl>?&embed={"<param1>":<value>,"<param2>":<value>}
| Parâmetro | Effect |
|---|---|
mpp |
Ativa o ícone de impressão e a impressão Ctrl+P. Por exemplo, <webUrl>?&embed={"mpp":true}. |
mpsn |
Mostra conteúdos de notas autocolantes quando o PDF contém notas autocolantes. Por exemplo, <webUrl>?&embed={"mpsn":true}. |
Pré-requisitos
Antes de criar pré-visualizações, certifique-se de que:
- O ficheiro é armazenado num contentor do SharePoint Embedded.
- A sua aplicação conhece o ID do contentor e o ID do DriveItem.
- A sua aplicação pode adquirir um token do Microsoft Graph.
- O autor da chamada tem permissão para ler o ficheiro.
- O tipo de ficheiro é suportado para pré-visualização.
- A IU pode alojar um iframe ou abrir uma nova página.
Criar uma ligação de pré-visualização
Chame o ponto final de pré-visualização a partir da camada de serviço.
Utilize este padrão de SDK C#:
ItemPreviewInfo preview = await graphServiceClient.Drives[driveId].Items[itemId]
.Preview
.PostAsync(null);
A resposta inclui informações de URL de pré-visualização:
{
"getUrl": "https://www.onedrive.com/embed?foo=bar&bar=baz",
"postParameters": "param1=value¶m2=another%20value",
"postUrl": "https://www.onedrive.com/embed_by_post"
}
Utilize getUrl quando disponível.
Cuidado
getUrl atualmente contém um token encriptado que só pode ser utilizado com a sua aplicação. Este comportamento pode mudar.
Remover a faixa de pré-visualização
Adicione nb=true ao URL obtido para remover a faixa na parte superior.
Exemplo:
https://contoso.sharepoint.com/restOfUrl/embed.aspx?param1=value&nb=true
Utilize esta opção apenas quando se adequa à sua experiência de utilizador e aos requisitos de conformidade.
Incorporar a pré-visualização num iframe
Crie uma página de aplicação que aloje o URL de pré-visualização.
Forma de exemplo:
<!DOCTYPE html>
<html>
<body>
<h2>Preview</h2>
<p>Preview of {file name}:</p>
<iframe src="{preview URL}" height="200" width="300" id="preview" title="File preview"></iframe>
</body>
</html>
Em produção, forneça também:
- Um título de iframe descritivo.
- Dimensionamento reativo.
- A carregar estados.
- Estados de erro.
- Uma transferência de contingência ou uma ação de abertura.
Carregar pré-visualizações dinamicamente
Não chame o Microsoft Graph diretamente a partir de um script do browser se isso criar problemas de partilha de recursos transversais à origem (CORS) ou expor tokens.
Utilize um ponto final do lado do servidor que:
- Autentica o utilizador.
- Valida o acesso ao ficheiro pedido.
- Adquire um token do Graph.
- Chama o ponto final de pré-visualização do DriveItem.
- Devolve o URL de pré-visualização ao cliente.
Utilize este padrão do lado do servidor:
[HttpGet]
[AuthorizeForScopes(Scopes = new string[] { "Files.Read.All" })]
public async Task<ActionResult<string>> GetPreviewUrl(string driveId, string itemId)
{
return url + "&nb=true";
}
Em seguida, o cliente pode pedir o URL e definir a origem do iframe.
async function preview(driveId, itemId) {
const url = `/GetPreviewUrl?driveId=${driveId}&itemId=${itemId}`;
const response = await fetch(url, {
credentials: 'include',
}).then(response => response.text());
document.getElementById('preview').src = response + "&nb=true";
}
Conceber a experiência de pré-visualização
Uma boa experiência de pré-visualização deve:
- Mostrar o nome do ficheiro.
- Mostrar um indicador de carregamento.
- Reserve espaço suficiente para o iframe.
- Forneça uma ação aberta no Office para ficheiros do Office.
- Indique uma ação de transferência quando a pré-visualização não estiver disponível.
- Preservar a acessibilidade do teclado.
- Evite intercetar o foco dentro da moldura de pré-visualização.
- Explicar erros no idioma amigável do utilizador.
Processar erros de pré-visualização
| Falha | Processamento |
|---|---|
| Tipo de ficheiro não suportado | Em alternativa, mostre uma ação de transferência ou abertura. |
| Permissão em falta | Peça ao utilizador para pedir acesso ou iniciar sessão novamente. |
| URL Expirado | Peça um NOVO URL de pré-visualização. |
| Erro CORS | Mova a chamada do Graph para o ponto final do lado do servidor. |
| Arquivo excluído | Atualize a lista de ficheiros e remova as seleções obsoletas. |
| Erro de serviço | Repita uma vez e, em seguida, mostre uma contingência estável. |
Importante
Não coloque os URLs de pré-visualização em cache como identificadores duráveis. Armazene o ID do contentor e o ID do DriveItem e, em seguida, crie um NOVO URL de pré-visualização quando necessário.
Pedidos de pré-visualização seguros
Tratar a pré-visualização como uma operação de leitura em conteúdo protegido.
O seu serviço deve:
- Valide o contexto de utilizador ou serviço com sessão iniciada.
- Confirme se o autor da chamada consegue ler o conteúdo do contentor.
- Confirme que o item pedido pertence ao contentor esperado.
- Evite expor tokens do Graph ao browser.
- Evite registar URLs de pré-visualização que incluam tokens confidenciais.
- Expirar sessões de pré-visualização do lado da aplicação quando o utilizador terminar sessão.
Validar a experiência de pré-visualização
Teste com vários tipos de ficheiro e utilizadores:
- Carregue um ficheiro PDF.
- Carregar um ficheiro de imagem.
- Carregue um ficheiro do Office.
- Crie um URL de pré-visualização para cada ficheiro.
- Componcione cada pré-visualização num iframe.
- Testar um utilizador com acesso de leitura.
- Testar um utilizador sem acesso.
- Elimine um ficheiro e confirme se o erro foi processado.
- Atualize um URL de pré-visualização expirado.
- Confirme se a ação de contingência funciona.
Ligar à tarefa de compilação seguinte
Depois de a pré-visualização estar a funcionar, adicione experiências de deteção para que os utilizadores possam encontrar conteúdos em contentores e ficheiros.
Continue para Procurar contentores e ficheiros.