我正在開發一個持續的API項目。目前的問題是能夠從AtTask服務器上以AtTask服務器上存在的文件夾結構下載我的數據。我已經創建了文件夾創建工具,文檔,文檔文件夾和文檔版本之間的數據類型似乎很清楚。我對擴展不在文檔對象(我必須參考文檔VERSION)這一事實有點失望......但從設計角度我可以看到一些原因。如何從AtTask下載文檔?
我現在遇到的問題是我需要獲取文件內容。我最初通過API文檔獲取文檔內容的方式與文檔建議的上傳方式相同 - 通過句柄。不幸的是,document和docv似乎都不支持我訪問句柄,除非寫一個新文件。
因此,我留下了「下載URL」作爲剩餘的選項。如果我使用瀏覽器從API調用構建UI字符串,則會得到一個包含https://attaskURL/document/download?ID=xxxx
(也可以獲取版本ID等)的URL。如果我將url粘貼到我登錄到AtTask用戶界面的瀏覽器中,它可以正常工作,我可以下載該文件。相反,如果我使用我的C#代碼來做到這一點,那麼我將登錄頁作爲流返回給我下載,而不是我的實際文件,因爲我沒有進行身份驗證。我已經嘗試創建一個網絡憑據,並附上用戶名和密碼的請求,但無濟於事。
我想有很多方法可以解決這個問題 - 一個簡單的方法就是找到一種方法,通過代碼「登錄」到下載站點(這似乎不是C#中常見的網絡憑證對象)或者找到一種方法通過API訪問文件內容。
欣賞你的想法!
這是訣竅。當我沒有使用現有會話對其進行標記時,下載URL將我重定向到登錄頁面。我認爲這是一個不同的登錄管理系統,因爲響應代碼通過Fiddler不同,但您絕對正確併爲我節省了大量不必要的登錄電話。 :) – joefox97
我嘗試使用sessionID,但沒有在我的情況下工作。仍然重定向到登錄頁面。任何想法可能是這裏的問題? –