Tag: YouTube上的API

NodeJS将video插入Youtube播放列表

我使用NodeJS,我想在我的脚本中插入一个function插入video到特定的播放列表。 我在互联网上看到了很多,我知道YouTube的API需要OAuth的工作,所以,一些HTML页面/callback获得令牌。 我是否错过了一些东西,或者是不可能在没有任何用户交互的脚本中处理这个令牌? 有这样一个简单的例子吗? 我试过这个使用youtube-api npm: var express = require('express'); var router = express.Router(), Youtube = require("youtube-api"), fs = require('fs'), router.get('/insert', function(req, res, next) { Youtube.authenticate({ type: "oauth" , token: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxZ9F0sVpqEXh" }); var req = Youtube.videos.insert({ "resource": { // Video title and description "snippet": { "title": "Test", "description": "Test video upload via YouTube API" }, […]

OAuth 2.0令牌处理。 有没有服务器令牌和客户端令牌?

理解oauth 2.0令牌的原理处理有一个问题。 我的情况是,我有一个基于Web的前端后端系统,使用node.js和angular 2.用户应该可以在本站点上传video。 然后创build一些额外的元数据(对于这个问题不重要)。 完成后,用户可以通过点击button将video上传到YouTube。 我的问题是在这个过程中,曼尼代币/凭证是如何存在的。 youtube api需要一个oauth标记。 剂量用户也有自己的令牌? 这里是我使用的教程: https : //ionicabizau.net/blog/14-uploading-videos-to-youtube-using-nodejs 正如你可以看到api的一个标记是为了本地testing而创build的。 但是这个令牌在现场版本中以不同的方式生成? 以及我的网站的用户如何被识别。 也通过这个令牌? 还是必须为他生成第二个令牌? 这是我的第一篇文章,如果缺less事情来澄清我的问题。 感谢可能的awnsers,解释和解决scheme。

如何使用节点js googleapis客户端上传和更新youtube频道横幅

我正在编写一个上传和更新YouTube频道横幅的应用程序。 我使用node.js和谷歌API客户端。 在官方的api文档中,没有关于node.js的示例如何发送图像内容,也没有关于callback签名的信息。这是我的代码: var google = require('googleapis'); var OAuth2 = google.auth.OAuth2; var oauth2Client = new OAuth2(); var youtube = google.youtube({ version: 'v3' }); //Setting the credentials oauth2Client.setCredentials({ access_token: 'STORED_IN_DATABASE', refresh_token: 'STORED_IN_DATABASE', }); //Send the request youtube.channelBanners.insert({ auth: oauth2Client, //image_content }, callback); 在调用插入方法之后,我必须调用channels.update方法,它在node.js上也没有例子

Node.js YouTube API上传无法转换video

我正尝试以编程方式将video上传到YouTube。 我select使用Node.js来完成任务。 我得到一个XML响应以及一个HTTP状态代码201,我看到video出现在videopipe理器中,但video总是有“失败(无法转换video文件)”信息。 我可以通过他们自己的页面上传自己的上传file upload文件,没有问题。 我只需要上传到一个帐户,所以我设置了帐户的OAuth2并存储了刷新令牌。 刷新标记是硬编码的,尽pipe我将其replace为下面的variables。 刷新标记本身是否需要刷新? 我的代码: var qs = require('querystring'), https = require('https'), fs = require('fs'); var p_data = qs.stringify({ client_id: myClientID, client_secret: myClientSecret, refresh_token: refreshTokenForAccount, grant_type: 'refresh_token' }); var p_options = { host: 'accounts.google.com', port: '443', method: 'POST', path: '/o/oauth2/token', headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Content-Length': p_data.length, 'X-GData-Key': myDeveloperKey } }; var […]

如何使用Node.js实现youtube.search.list

我正在尝试使youtube.search.list与Node.js一起工作。 看起来我可以成功通过YouTube API v.3.0进行身份validation,但运行youtube.search.list我会得到空的结果集。 代码中有愚蠢的错误,或者我在YouTube API上做出错误的请求。 这里是代码: var google = require('googleapis'); var youtubeV3 = google.youtube({ version: 'v3', auth: 'MY_API_KEY' }); var request = youtubeV3.search.list({ part: 'snippet', type: 'video', q: 'Cat', maxResults: 50, order: 'date', safeSearch: 'moderate', videoEmbeddable: true }); // console.log('Here we start search'); for (var i in request.items) { var item = request.items[i]; console.log('Title: […]

使用Youtube API获取用户电子邮件

我怎样才能使用Youtube API获得authentication的用户电子邮件? 我尝试使用channels.list : GET https://www.googleapis.com/youtube/v3/channels?part=brandingSettings&mine=true&key={YOUR_API_KEY} 它不会返回电子邮件… 我使用这个NodeJS模块与Youtube API进行通信: var Youtube = require("youtube-api"); Youtube.authenticate({ type: "oauth", token: ACCESS_TOKEN }); Youtube.channels.list({ "part": "brandingSettings", "mine": true }, function (err, data) { console.log(err, data); });

检查服务器端是否存在YouTubevideo

如何检查node.js应用服务器端是否存在youtubevideo: var youtubeId = "adase268_"; // pseudo code youtubeVideoExist = function (youtubeId){ return true; // if youtube video exists }

Q.nvovo不能处理响应

我制作下载YouTubevideo的function并上传到s3。 但是我正面临着一个问题。如果我使用Q.all上传video到s3,它工作正常,但如果我在Q.all的地方使用Q.ninvoke,它总是无法处理成功的响应,并给错误object has no method apply function checkYoutubeRecord(youtubeRecords){ var totalCount = youtubeRecords.length; var count = 0; (function downloadLoop(record){ if(record.Size > 0){ if(count === totalCount-1){ console.log('\n\n\ncomplete downloading\n\n\n'); }else{ count = count + 1; downloadLoop(youtubeRecords[count]); } }else{ /*If the size of the record is zero then if don't need to check if it exist in the log […]

强制下载JavaScript中的浏览器(客户端网站)中的url的YouTubevideo

我正在使用基于node的服务器站点的YouTubevideo下载网站。 我正在使用叫做ytdl-core npm包,这个模块正在返回下载链接。 但是,当我点击该链接时,它将我redirect到“video预览”,而不是“触发器下载”, ytdl(url, function(err, format) { if (err) {res.send('the url is invalid please try again…');} console.log((format.formats).length);//i am getting value… in console but not outside of the function.. //this object contains all the download links var links = [] for( var i= 0, len = (format.formats).length; i < len; i++) { var el = […]

使用一个stream,使用Node.js将video上传到Youtube

我可以轻松地将video更新到Youtube: var googleapis = require('googleapis'); googleapis.discover('youtube', 'v3').execute(function(err, client) { var metadata = { snippet: { title:'title', description: 'description'}, status: { privacyStatus: 'private' } }; client .youtube.videos.insert({ part: 'snippet,status'}, metadata) .withMedia('video/mp4', fs.readFileSync('user.flv')) .withAuthClient(auth) .execute(function(err, result) { if (err) console.log(err); else console.log(JSON.stringify(result, null, ' ')); }); }); 问题是对于fs.readFileSync大文件是非常不实际的。 显然这是固定的,但提供的例子是为谷歌驱动器: var fs = require('fs'); var drive = google.drive({ […]