我的帳戶已連接到 CMS,但我在 API 庫中看不到 Youtube 內容 ID。但是,我在啟用的 API 中看到了它!(它出現在我在 Youtube Content ID API 參考文檔中嘗試“使用 OAuth 2.0 授權請求”之后)。我可以在參考文檔中測試 API,它會顯示來自我的 CMS 的數據。但是當我從我的程序中調用 API 時,響應總是這樣:{ "error": { "errors": [ { "domain": "global", "reason": "notFound", "message": "Not Found" } ], "code": 404, "message": "Not Found" }}這是我使用 Go 的實現:func TestYoutubeAPI(w http.ResponseWriter, r *http.Request) { data, err := ioutil.ReadFile("./google-service-key.json") if err != nil { log.Fatal(err) } config, err := google.JWTConfigFromJSON(data, "https://www.googleapis.com/auth/youtubepartner", "https://www.googleapis.com/auth/youtube.force-ssl", "https://www.googleapis.com/auth/youtube") if err != nil { log.Fatal(err) } client := config.Client(oauth2.NoContext) request, _ := http.NewRequest("GET", "https://www.googleapis.com/youtube/partner/v1/assetSearch", nil) request.Header.Add("Accept", "application/json") query := request.URL.Query() query.Add("createdAfter","2015-01-29T23:00:00Z") query.Add("key", "XXX") request.URL.RawQuery = query.Encode() response, err := client.Do(request) if err != nil { fmt.Fprintln(w, err) } else { responseBody, _ := ioutil.ReadAll(response.Body) fmt.Println(response.Status) fmt.Fprintln(w, string(responseBody)) }}其他 API(Youtube 數據 API)可以正常使用此代碼。但是,我無法使用 Youtube Content ID API 獲得預期的結果。任何有這方面經驗的人請幫助我。謝謝你。
1 回答

慕的地10843
TA貢獻1785條經驗 獲得超8個贊
我找到了答案!
因為我使用Google Service Account與 Google API 進行交互。它似乎創建了一個新的用戶帳戶。所以我必須通過將服務帳戶客戶端電子郵件添加到 Youtube CMS 來授予對 Youtube CMS 的權限。最后,我可以使用 API 訪問 Youtube CMS。
- 1 回答
- 0 關注
- 265 瀏覽
添加回答
舉報
0/150
提交
取消