【发布时间】:2018-12-04 14:36:37
【问题描述】:
我正在尝试将 youtube 视频插入到我的播放列表中的特定位置。根据the docs,我应该可以通过设置position 属性。但是,此设置似乎无济于事。使用以下代码 sn-p,不会引发错误并插入视频。唯一的问题是它被插入到播放列表的顶部。 position 属性被忽略。
await google.youtube('v3').playlistItems.insert({
auth,
part: 'snippet',
resource: {
snippet: {
playlistId,
position: 69,
resourceId: {
kind: 'youtube#video',
videoId: 'M7FIvfx5J10',
},
},
},
})
我尝试将position 放在对象的不同位置,但没有效果。我还在官方 google api 问题跟踪器上提交了一个问题,但我没有得到任何回复。我用的是官方的googleapis node package。
编辑:
如果我尝试插入 update,则更新请求会抛出 403 playlistItemsNotAccessible。这让我认为这可能是一个(记录不充分的)权限问题。我的作用域是[ 'https://www.googleapis.com/auth/youtube' ]。
编辑 2:
插入正在使用position 值。如果我输入position: -12,我会得到:
Error: Invalid value for UnsignedInteger: -12.
【问题讨论】:
-
插入视频后尝试使用
PlaylistItems: update。如果它有效,那么您现在可以将其作为解决方法。 -
感谢 MαπμQμαπkγVπ.0 的评论。如果我尝试更新,我会收到
403 playlistItemsNotAccessible。 -
playlistItemsNotAccessible仅表示请求未正确授权更新指定的播放列表项。授权流程可以参考this documentation。 -
@MαπμQμαπkγVπ.0 你知道我将如何授权这种类型的行动吗?我尝试使用范围
[ 'https://www.googleapis.com/auth/youtube', 'https://www.googleapis.com/auth/youtubepartner', 'https://www.googleapis.com/auth/youtube.upload' ],但它仍然不起作用。
标签: node.js youtube-api youtube-data-api google-apis-explorer