Gestion des sessions et de la persistance dans Excel avec Microsoft GraphManage sessions and persistence in Excel with Microsoft Graph

Si votre application doit effectuer plus de deux appels à l’API Excel, nous vous recommandons de créer une session et de transmettre l’ID de la session avec chaque requête.If your application needs to make more than one or two calls to the Excel API, you should create a session and pass the session Id with each request. La présence d’un ID de session dans les requêtes garantit que vous utilisez l’API Excel de la façon la plus efficace possible.The presence of a session Id in the requests ensures that you are using the Excel API in the most efficient way possible.

Les API Excel sont appelées dans l’un des trois modes suivants :Excel APIs are called in one of three modes:

  1. Session persistante Toutes les modifications apportées au classeur sont conservées (enregistrées) dans le classeur.Persistent session All changes made to the workbook are persisted (saved) to the workbook. Ce mode vous garantit une utilisation efficace de l’API Excel.This is the most efficient and best-performing way to use the Excel API.
  2. Session non persistante Les modifications apportées par l’API ne sont pas enregistrées dans l’emplacement source.Non-persistent session Changes made by the API are not saved to the source location. À la place, le serveur principal Excel conserve une copie temporaire du fichier qui reflète les modifications apportées au cours de cette session API.Instead, the Excel backend server keeps a temporary copy of the file that reflects the changes made during that particular API session. Les modifications sont perdues à l’expiration de la session Excel.When the Excel session expires, the changes are lost. Ce mode est utile pour les applications qui doivent effectuer une analyse ou obtenir les résultats d’un calcul ou l’image d’un graphique, sans affecter l’état du document.This mode is useful for apps that need to do analysis or obtain the results of a calculation or a chart image, but do not need to affect the document state.
  3. Sans session Les appels à l’API ne transmettent pas d’ID de session. Les serveurs Excel doivent rechercher la copie du classeur située sur le serveur pour chaque opération.Sessionless The API calls do not pass a session Id. The Excel servers have to locate the server's copy of the workbook for each operation. Ce mode n’est pas efficace pour appeler l’API Excel, mais il est utile pour effectuer certains types de requêtes isolées.This is not an efficient way to call the Excel API, but it is suitable for making certain types of isolated requests.

Pour représenter la session de l’API, utilisez l’en-tête workbook-session-id: {session-id}.To represent the session in the API, use the workbook-session-id: {session-id} header.

Remarque : l’en-tête de la session n’est pas nécessaire pour faire fonctionner une API Excel. Toutefois, nous vous recommandons d’utiliser l’en-tête de session pour obtenir de meilleures performances. Si vous n’utilisez pas un en-tête de session, les modifications apportées pendant l’appel de l’API sont conservées dans le fichier.Note: The session header is not required for an Excel API to work. However, we recommend that you use the session header to improve performance. If you don't use a session header, changes made during the API call are persisted to the file.

Types de demandesRequest types

La gestion des erreurs suggérée pour les API Excel repose sur le type de demande, le code d’erreur et le code d’État.Suggested error handling for Excel APIs is based on request type, error code, and status code. Les types de demande sont les suivants :The following are the request types:

  • Demande CreateSession : utilisée pour créer une session permanente ou non permanente.CreateSession request - Used to create either a persistent or a non-persistent session. Dans le cas d’une réponse réussie, l’ID de session est renvoyé dans la propriété ID dans le corps de la réponse.In a successful response, the session ID will be returned in the id property in the response body. Pour plus d’informations, consultez la rubrique Create session.For details, see Create session.
  • Demande de session : demandes ultérieures qui suivent une demande CreateSession.Sessionful request - Subsequent requests that follow a CreateSession request. Elles incluent généralement un workbook-session-id: {session-id} en-tête.They usually include a workbook-session-id: {session-id} header. L’exception est une demande d’état de sondage, qui utilise le modèle d’opération de longue durée.The exception is a poll status request, which uses the long-running operation pattern. Pour plus d’informations, consultez la rubrique utilisation des API qui prennent beaucoup de temps.For details, see working with APIs that take a long time to complete.
  • Demande sans session -utilisée en mode sans session.Sessionless request - Used in Sessionless mode. Ces demandes n’ont pas d' workbook-session-id: {session-id} en-tête.These requests don't have a workbook-session-id: {session-id} header.

Étapes suivantesNext steps

Pour apprendre à créer et utiliser des sessions, consultez l’article Créer une session.To learn how to create and use sessions, see the Create session reference topic.

Voir aussiSee also