Compartilhar via


livro: createSession

Namespace: microsoft.graph

Crie uma nova sessão de livro.

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, a criação de uma nova sessão requer um tempo indeterminado para concluir. O Microsoft Graph também fornece um padrão de operações de execução prolongada. Este padrão fornece uma forma de consultar a criação status atualizações, sem esperar pela conclusão da criação. Seguem-se os passos:

  1. É Prefer: respond-async adicionado um cabeçalho ao pedido para indicar que se trata de uma operação de execução prolongada.
  2. A resposta devolve um Location cabeçalho para especificar o URL para consultar a operação de criação status. Pode obter a operação status ao aceder ao URL especificado. O status será um dos seguintes: notStarted, running, succeededou failed.
  3. Após a conclusão da operação, pode pedir a status novamente e a resposta mostrará ou succeededfailed.

Esta API está disponível nas seguintes implementações de cloud nacionais.

Serviço global US Government L4 US Government 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 permissões marcadas como menos privilegiadas para esta API. Utilize uma permissão ou permissões com privilégios mais elevados apenas se a sua aplicação o exigir. Para obter detalhes sobre as permissões delegadas e de aplicação, veja Tipos de permissão. Para saber mais sobre estas permissões, veja a referência de permissões.

Tipo de permissão Permissões com menos privilégios Permissões com privilégios superiores
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 do pedido, forneça uma representação JSON do objeto workbookSessionInfo .

Resposta

Se for bem-sucedido, este método devolve um 201 Created código de resposta e um objeto workbookSessionInfo no corpo da resposta. Para uma operação de execução prolongada, devolve 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 prolongada

Solicitação

POST https://graph.microsoft.com/v1.0/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, veja Trabalhar com APIs que demoram muito tempo a concluir para obter a operação status e obter o resultado da criação da sessão.

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

Solicitação

POST https://graph.microsoft.com/v1.0/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
}