0
我懇求您的幫助...YouTube Api與ASP.NET 4.5 WebForms - OAuth2問題
我們需要上傳視頻到Youtube頻道,使用WebForms應用程序。所以,這是我倒要告訴你的代碼的主線:
var folder = System.Web.HttpContext.Current.Server.MapPath("~/App_Data/GoogleData");
UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
new ClientSecrets
{
ClientId = ConfigInfo.YouTubeApiClient_id,
ClientSecret = ConfigInfo.YouTubeAppClient_secret,
},
new[] { YouTubeService.Scope.YoutubeUpload },
"user",
CancellationToken.None,
new FileDataStore(folder,true)).Result;
我有錯誤是:System.ComponentModel.Win32Exception:訪問被拒絕。
如果它那樂於助人的一些額外的信息:
- 我創建ClientID的和console.developers.google.com憑證作爲一個應用程序。
- 它在我的本地主機上正常工作,如果我調試應用程序,但它不能在Arvixe共享主機服務器上工作。
這是我已經嘗試過:
- 的第一件事,我便想起該文件夾(Google資料)上被賦予讀/寫權限,所以我做到了,但還是同樣的錯誤。
- 我以前也問Arvixe支持團隊,給予該文件夾每個人 - 完全控制訪問(他們說,他們已經已經這樣做了,但不知道)
- 我以前也試圖刪除FileDataSource參數和使用GoogleWebAuthorizationBroker.Folder ,但同樣的錯誤。
- 我已經閱讀了所有的Google示例和代碼,但它們都是用於控制檯或桌面應用程序的,並且我有一個帶有Web服務器的Web應用程序。
請任何幫助,你可以給我們將非常感激! 再次感謝!
有完全相同的問題。我們運行我們自己的服務器(我無法訪問它們)。在Visual Studio設置爲IIS Express的本地機器上工作,但在我們的開發服務器(與我們的活動服務器重複)上給出了完全相同的錯誤。起初我還認爲這是FileDataStore,我找到了我實現的一個DatabaseDataStore(github.com/LindaLawton/Google-Dotnet-Samples/blob/master/...)的示例。仍然沒有成功,但消除了任何文件權限問題。 – Talib
我懷疑它與用戶權限有關,而不是文件夾/文件權限。我無法測試這個,因爲我沒有直接訪問服務器,現在需要獲得許可才能進行更改,所以不會很快發生。我不知道該怎麼問系統管理員。這個答案把我放在那個軌道上:http://stackoverflow.com/questions/14194146/system-componentmodel-win32exception-access-is-denied-error。但它涉及到服務。 – Talib
嘿!這裏有一些進展:1)使用VS在localhost上運行項目2)Google.Apis需要的文件是在你映射的文件夾(app_data/GoogleData在我的情況下)中使用令牌創建的。 3)將該文件複製到同一文件夾中的生產站點。它會工作,但我測試如果令牌自動更新或不。但問題是創建文件! – Ariel