问题描述
我正在尝试将照片从我的 nodejs 服务器上传到谷歌照片。为此,我遵循了官方指南,创建了一个谷歌项目和 OAuth 2.0 客户端 ID。
我添加了 Authorized javascript origin :http://localhost:2000 和 授权重定向 URI:http://localhost:2000/gphotosredirect
我还获得了我的客户 ID 和 SECRET 并将它们添加到我的服务器代码中。通过 npm 安装 googleapis
const oauth2clientForPhotos = new google.auth.OAuth2(GOOGLE_PHOTOS_CLIENT_ID,GOOGLE_PHOTOS_CLIENT_SECRET,"http://localhost:2000/gphotosredirect");
const scopes = //some scopes defined here
const gPhotosUrl = oauth2clientForPhotos.generateAuthUrl({
// 'online' (default) or 'offline' (gets refresh_token)
access_type: 'offline',// If you only need one scope you can pass it as a string
scope: scopes,});
app.get('/gphotosredirect',function(req,res){
console.log("here print the code")
console.log(req.query)
})
generateAuthUrl 成功返回一个 url。 我的问题是如何处理这个 url? 我的 nodejs api 不是一个网站,它只是作为我的移动应用程序的 api。我的目标是将图片数据从 android 应用程序发送到 nodejs 服务器,然后将其上传到谷歌照片。我不希望 android 应用程序上传谷歌照片。
如果我只是通过将网址粘贴到浏览器来手动访问它(我不应该这样做,因为这是一个服务器?)
它显示我选择一个帐户的 Google 登录页面。我选择我添加为测试的 google 帐户,批准权限,最后它重定向我,我得到控制台输出,其中包含令牌。
{ code:
'xxxxxxxxx',scope:
'https://www.googleapis.com/auth/photoslibrary.sharing https://www.googleapis.com/auth/photoslibrary' }
问题是,由于这个令牌不是永久性的,我每次启动服务器时都必须这样做,我该如何自动执行?获取 url 后如何以编程方式获取此代码
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)