2017-08-10 4 views
0

Disons que j'ai un bloc-notes avec le nom 'MyNotebook'. Maintenant, ce cahier a un groupe de section 'Group1' et maintenant 'Group1' a un autre groupe 'Group2'. Maintenant, dans 'Group2', j'ai la section 'Section1' qui a une page 'Page1'.Onenote la page hiérarchie

Si nous regardons cela à comme une structure de répertoire le chemin à la page sera - myNotebook/Groupe1/Groupe2/Section1/Page1

Lorsque je tente d'obtenir la page en utilisant api page get Je suis en mesure d'obtenir seulement le parent immédiat ie Section1. Alors disons que je veux obtenir cette hiérarchie complète comment je peux obtenir cela?

Répondre

0

Quelle API utilisez-vous spécifiquement pour obtenir des pages?

Si vous utilisez GET https://www.onenote.com/api/v1.0/me/notes/pages, cela vous donnera toutes les pages, bien que cette API ait des limitations (par exemple, elle est paginée, elle ne vous donnera que les 20 pages les plus récentes. t travailler si l'utilisateur a un grand nombre de sections).

https://blogs.msdn.microsoft.com/onenotedev/2017/07/21/a-few-performance-tips-for-using-the-onenote-api/

Voir la section "Lorsque vous récupérez toutes les pages pour un utilisateur, faites séparément pour chaque section"

Je vous recommande de faire un appel comme:

GET https://www.onenote.com/api/v1.0/me/notes/Notebooks $ expand = sections, sectionGroups ($ sections = élargir, sectionGroups (niveaux $ = max; $ sections = élargir))

Pour obtenir toutes les sections, puis faire un appel comme:

GET https://www.onenote.com/api/v1.0/me/notes/sections/ {id}/pages

Pour obtenir les pages de chaque section.

+0

J'utilise MS Graph pour api OneNote pour obtenir des pages. Disons que j'ai 3000 pages dans mon compte onenote je peux appeler https://graph.microsoft.com/v1.0/me/onenote/pages api avec skip et le paramètre supérieur jusqu'à ce que j'obtiens toutes les pages. Cela fonctionnera-t-il sans étranglement? –

+0

Il devrait, oui. Cependant, je ne recommande pas cela. Appelez chaque section séparément - c'est beaucoup plus performant. –

0

En plus de ce que Jorge a dit, si vous voulez plus précisément la hiérarchie vers le haut (et non vers le bas), vous pouvez faire:

GET https://www.onenote.com/api/v1.0/me/notes/pages $ expand = parentSection ($ expand = parentSectionGroup ($ expand = parentSectionGroup ($ expand = parentNotebook)))

Mais comme Jorge dit, soyez prudent lorsque vous utilisez l'API pages GET car il a des limites