Compartilhar via


Criar sessão

Namespace: microsoft.graph

Crie uma nova sessão de pasta de trabalho.

As APIs do Excel podem ser chamadas em um destes dois modos:

  1. Sessão persistente – Todas as alterações feitas na pasta de trabalho são persistentes (salvas). Este é o modo normal de operação.
  2. Sessão não persistente – As alterações feitas pela API não são salvas na localização de origem. Em vez disso, o servidor back-end do Excel mantém uma cópia temporária do arquivo que reflete as alterações feitas durante essa sessão de API específica. Quando a sessão do Excel expirar, as alterações serão perdidas. Esse modo é útil para aplicativos que precisam fazer uma análise ou obter os resultados de um cálculo ou de uma imagem de gráfico, mas não afeta o estado do documento.

Para representar a sessão na API, use o cabeçalho workbook-session-id: {session-id}.

Observação: O cabeçalho de sessão não é obrigatório para uma API do Excel funcionar. No entanto, recomendamos que você use o cabeçalho de sessão para melhorar o desempenho. Se você não usar um cabeçalho de sessão, as alterações feitas durante a chamada da API serão mantidas como persistentes no arquivo.

Em alguns casos, criar uma nova sessão requer um tempo indeterminado para ser concluído. O Microsoft Graph também fornece um padrão de operações de execução longa. Esse padrão fornece uma maneira de sondar para a criação status atualizações, sem aguardar a conclusão da criação. A seguir estão as etapas:

  1. Um Prefer: respond-async cabeçalho é adicionado à solicitação para indicar que ele é uma operação de execução longa.
  2. A resposta retorna um Location cabeçalho para especificar a URL para sondagem da operação de criação status. Você pode obter a operação status acessando a URL especificada. O status será um dos seguintes: notStarted, running, succeededou failed.
  3. Após a conclusão da operação, você pode solicitar o status novamente e a resposta será exibida succeeded ou failed.

Essa API está disponível nas seguintes implantações nacionais de nuvem.

Serviço global Governo dos EUA L4 GOVERNO DOS EUA L5 (DOD) China operada pela 21Vianet

Tratamento de erros

Essa solicitação poderá, ocasionalmente, receber uma mensagem de erro HTTP 504. A resposta apropriada para esta mensagem de erro é repetir a solicitação.

Permissões

Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões privilegiadas mais altas
Delegado (conta corporativa ou de estudante) Files.ReadWrite Indisponível.
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Aplicativo Sem suporte. Sem suporte.

Solicitação HTTP

POST /me/drive/items/{id}/workbook/createSession
POST /me/drive/root:/{item-path}:/workbook/createSession

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.

Corpo da solicitação

No corpo da solicitação, forneça uma representação JSON do objeto WorkbookSessionInfo .

Resposta

Se for bem-sucedido, esse método retornará um 201 Created código de resposta e um objeto workbookSessionInfo no corpo da resposta. Para uma operação de longa execução, ela retorna um 202 Accepted código de resposta e um Location cabeçalho com um corpo vazio na resposta.

Exemplos

Exemplo 1: criação de sessão com padrão de operação de execução longa

Solicitação

POST https://graph.microsoft.com/beta/me/drive/items/{drive-item-id}/workbook/createSession
Prefer: respond-async
Content-type: application/json

{
    "persistChanges": true
}

Resposta

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 202 Accepted
Location: https://graph.microsoft.com/v1.0/me/drive/items/{drive-item-id}/workbook/operations/{operation-id}
Content-type: application/json

{
}

Com a 202 Accepted resposta, consulte Trabalhar com APIs que levam muito tempo para serem concluídas para saber como recuperar a operação status e obter o resultado da criação da sessão.

Exemplo 2: Criação básica de sessão

Solicitação

POST https://graph.microsoft.com/beta/me/drive/items/{id}/workbook/createSession
Content-type: application/json

{
  "persistChanges": true
}

Resposta

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 201 Created
Content-type: application/json

{
  "id": "id-value",
  "persistChanges": true
}