2016-11-08 33 views
1

我正在尝试为OneNote ClassNotebook构建任务窗格加载项。OfficeJS和OneNote API的笔记本ID之间的区别

我想知道当前用户是老师还是学生。

要做到这一点,我的计划是:从officeJS activeNotebook的
1.使用ID
2.获取类笔记本采用ID从1从OneNote API
3.使用2学生和老师检查,如果当前用户是学生或教师

不过从2号是一个很奇怪的形式,这样的 - {3b9c6337-cd8c-5c1c-a87b-1a9515237c48}{1}

我如何可以获取笔记本与ID?

代码:

let notebook = ctx.application.getActiveNotebook(); 
notebook.load('id,name,clientUrl'); 
return ctx.sync().then(() => { 
    fetch({ 
    url: `https://www.onenote.com/api/v1.0/me/notes/classNotebooks/${notebook.id}?expand=students,teachers` 
    }); 
}); 

回答

2

编辑:我很高兴地说,这是现在可用,使用GetRestApiID这一点。

https://github.com/OfficeDev/office-js-docs/blob/master/reference/onenote/page.md#getRestApiId


此时,OneNote的REST API和OneNote加载项具有不亲的ID。有一个这样的用户发票条目: https://onenote.uservoice.com/forums/245490-onenote-developer-apis/suggestions/17010982-add-onenote-add-ins-to-onenote-api-compatible-ids

现在,你必须依赖类似的URL或名称。

+0

我看过那个uservoice,但我不知道它会发生与否。你有没有任何线索中的某个人看过它或..? – dongseok0

+0

我们已经开始研究它。即将更新... –

1

REST API和JavaScript API之间的Id不兼容。 兼容的是ClientUrl。

在JavaScript API中,有notebook.ClientUrl 在Rest API中,它有一个NoteClientUrl。

相关问题