2016-01-23 69 views
0

我在OneNote開發人員博客上問了這個問題, http://blogs.msdn.com/b/onenotedev/archive/2016/01/13/onenote-api-throttling-and-best-practices.aspx - Jorge建議在這裏再次提問。


我可以使用
POST ... beta/me /筆記本/筆記本電腦/ {主筆記本電腦}/copynotebook
創建多個筆記本電腦,使用REST API,撥打電話的速度非常快。

使用
POST ...添加頁面... beta/me/notes/pages/{template page}/copyToSection
正常工作,並且可以獲取pageID。

這一切都按預期工作,直到筆記本電腦的數量在得到什麼似乎像一個小數目筆記本可能低於50 這個任何命令來獲取pageIDs如 GET ... /測試/ ME /票據後/ sections/{sectionID}/pages?top = 100「
導致出現多個」502 Bad Gateway「響應,偶爾會在循環10-15分鐘後等待」200 OK「。

當筆記本計數器到100左右的所有頁面調用失敗,無論是在我的PHP腳本,提琴手或Microsoft Graph Explorer。刪除筆記本返回功能

我知道有一個5000筆記本的限制,但有一個頁面API功能的下限筆記本電話繼續 上班)。 是否可以只選擇筆記本的一個子集來「活躍」以減少API調用的開銷?


目前我的解決方法是使用OneDrive API下載或移動OneDrive的筆記本電腦來完成同樣的事情 - 還有其他方法嗎?OneNote REST API - 如何處理「502錯誤網關」錯誤?

+0

你能分享任何成功請求的的correlationID(HTTP標頭),所以我們可以查找後續數據,並找到TE 502的根本原因? –

+0

嗨豪爾赫。幹得好。 X-CorrelationId:aa2a1068-683b-4fd2-9417-3754e10110f4 – codeye

+0

我剛剛開始在開發應用程序中發出一個簡單的3筆記GET請求,發現這個502錯誤的網關錯誤,該請求曾多次發揮作用(第一次在時間戳前15分鐘的評論)。 將「FavorDataRecency:true」添加到請求標頭不做任何事情。 – Velojet

回答

1

如果您的場景涉及在有大量節的情況下調用GET〜/ sections/{id}/pages API,我們當前建議將以下標題添加到您的API請求中。

FavorDataRecency:真

+1

這應該被認爲是一個錯誤。 – Evert

+0

感謝Manoj,增加了** FavorDataRecency:true **修復了這個問題,大於120秒的請求現在在10秒內完成。添加標題有缺點嗎?乾杯史蒂夫 – codeye

0

1. 就您所知,您在查詢的部分下創建了多少頁? 2. 每個筆記本還有多少部分(平均您創建)? 3. 還提供這種請求的相關ID(來自響應)與提出此請求的日期,時間和時區。

但是,頁數沒有限制。

+0

Hi Sharad, 1。我首先查詢「主」筆記本中空的部分。 2.我生成的筆記本電腦每次包含7個部分(6個從「主」筆記本複製生成,1個添加患者姓名 - 最後一部分來自第二個筆記本中的「模板頁面」,然後重命名爲)。 3.我沒有收到相關ID,這裏是一個典型的響應 HTTP \ /1.1 502網關錯誤 服務器:Microsoft-IIS \或8.5 X供電,通過:ASP.NET 日期:星期一, 2016年1月25日13:39:25 GMT 內容長度:0 – codeye