2016-07-29 29 views
0

我使用OneNote的REST API在OneNote中創建頁面。大多數情況下,它運作良好。但是,有些頁面從不顯示。根據他們的HTTP響應代碼(201),它們都正確發佈,但無論運行程序的時間或次數是多少次,都不會出現某些頁面(始終是相同的頁面)。有時候,如果我等了很長時間(例如幾天),最終會出現一個頁面,但通常會在一段時間後再次消失。如何在REST API創建後顯示OneNote頁面?

示例:如果我要上傳10個頁面,我可能會立即出現在OneNote Online中的5個,10分鐘後出現3個,以及根本不顯示的2個(無論我同步多少),即使它們都發布到相同的地方,並且具有唯一的名稱,並且所有返回響應201.

如果我使用缺少頁面的ID發送GET請求並在頭中包含FavorDataRecency: true,則API返回沒有這樣的頁面存在。但是,如果我將該標題關閉,那麼API會返回它們以及它們的信息。

我該如何讓他們出現?

更新注意:如果我刪除我正在上傳到的部分並重新創建它們,那麼運行我的程序,所有頁面POST都會正常。我還沒有確定他們是否會在後續的跑步中繼續罰款。就目前而言,在我看來,像OneNote索引或緩存頁面的方式可能是問題的一部分。思考?

+0

如果您打開OneNote - 您確定這些頁面存在於筆記本中嗎? –

+1

這就是我所指的實際「顯示」頁數。筆記本和部分肯定存在。 POST響應它成功創建頁面。然而,其中只有少數人會在OneNote中出現。 – Elliptica

回答

0

上述症狀:

  • POST成功
  • 頁不GET顯示來電
  • 頁面不OneNote中顯示

暗示您的網頁沒有實際上成功創建 - 這裏是我的要求/建議:

  1. 詢問:在發生此症狀的其中一個POST頁面響應中將X-CorrelationId標頭的值發送給我們,以便我們可以對其進行調試。
  2. 建議作爲改進/臨時解決方法:您可以在看不到頁面後重試POST調用。
+0

當然。對於1),我如何得到X-CorrelationId?對於2),我嘗試重新運行POST,但頁面仍然不顯示。奇怪的是,我甚至刪除了該部分並重新創建了該部分,然後重新運行該程序。它的工作,然後後續更新面臨同樣的問題。 (我所做的是刪除具有相同名稱的部分中的任何頁面,然後使用該名稱創建一個新頁面)。奇怪的是,如果我上傳頁面A,B,C,D和C是沒有出現在原始部分中的頁面,那麼它也是沒有出現在新部分中的頁面(雖然它在C完全不存在時出現)。 – Elliptica

+0

1)X-CorrelationId是我們發回的響應中的HTTP標題(您發送的身份驗證信息也在標題中) - 您如何獲取它取決於您正在編碼的語言。 –

+0

2)這提示了某些類型內容的一致性失敗。擁有X-CorrelationId將幫助我們解決問題。 –