4

我将此作为对相关问题的答案发布,但已被版主删除,因此我现在将其作为问题发布。相关问题是

从 Google 相册访问共享相册

我正在尝试使用 JavaScript 访问 Google 相册共享相册。使用 Picasa 网络相册数据 API 可以更轻松地处理使用 Picasa 创建的公开相册。

我开发了一种特殊的解决方案来解析共享相册 URL 的 HTML 内容,例如

https://photos.google.com/share/<album>?key=<key>

解析函数是

function getgooglephotos2(result)
{
    var r2 = result.substr(result.search("AF_initDataCallback\\("));
    var r3 = r2.substr(0, r2.search("https://video"));
    var img = r3.search("https:");
    while (img != -1) {
        var r4 = r3.substr(img);
        var imgend = r4.search("\"");
        var r5 = r4.substr(0, imgend);
        // r5 contains an image url
        r3 = r4.substr(imgend);
        img = r3.search("https:");
    }
}

我更喜欢更清洁的方法。任何的想法?

谢谢。

PS:似乎使用身份验证,我可以访问 Google Photos 共享相册,但我正在尝试实施一个不需要对共享(公共)相册进行身份验证的解决方案。这是一个链接

https://adodson.com/hello.js/demos/albums.html

一个更简单的测试方法是

在 picasa 上进行身份验证并获取您的用户 ID

https://picasaweb.google.com

认证后你会到达

https://get.google.com/albumarchive/<userid>?source=pwa

使用 Picasa 网络相册数据 API 获取您的相册列表

https://picasaweb.google.com/data/feed/api/user/<userid>
4

1 回答 1

1

我只是在开发不需要身份验证的应用程序。无论如何,您需要指出应该显示哪个专辑。在我的项目中,我使用 Firebase 存储共享相册的 URL。然后我请求 URL 并使用正则表达式获取照片。要检索我使用本教程的照片:

https://medium.com/@ValentinHervieu/how-i-used-google-photos-to-host-my-website-pictures-gallery-d49f037c8e3c

目前无法在未经身份验证的情况下直接从 Google 相册访问共享相册。

于 2019-07-18T18:49:12.407 回答