首页 > 解决方案 > Unsplash API:如何通过浏览器检索经过身份验证的访问登录的 Access_Token?

问题描述

我需要提交一个Unsplash API的已批准帐户访问权限,以便访问某些链接进行访问批准。鉴于支持团队的回复已经花费了几天以上的时间,我只想寻求额外的帮助来解决通过 GET / POST 方法检索新请求提交的 access_token 的问题。

最初的网站运行良好,直到我想准备提交生产阶段并想准备对 Unsplash API 的请求的潜在增加。

然而,审批过程需要一定的设置标准,我在开发阶段完全错过了,并试图尽快解决。关键组件之一是解析您的 UTM 链接,您可以在此处找到理想的参考:https ://help.unsplash.com/en/articles/2511315-guideline-attribution 。

然后我的挑战是我试图使用官方的 javascript API,Unsplash-Javascript-API ( https://github.com/unsplash/unsplash-js#authorization ),努力使身份验证/请求过程更简单我要调用的 webapp。

尽管大多数 GET 请求确实有效,但必须使用通过“ download_location ”(https://help.unsplash.com/en/articles/2511258-guideline-triggering-a-download)的链接的特定 URL ,然后它将要求 web 应用程序的每个新提交请求都需要经过身份验证的请求。

最后的挑战是,显然尚不清楚官方 Unsplash-Javascript-API 是如何实际提取“经过身份验证的”请求的,因为我无法在网站上找到它,因此我可以检索当前的access_token以获取请求'用法。

我通过 API 使用的基本代码如下,但是我很困惑每页可以拉取的实际最大请求是多少,我希望获得 100 个返回图像的详细信息,但每次最多只能获得 30 个。任何人也可以帮助确认是否有解决方法可以将这个 30 增加到 100?


检索照片集

unsplash.collections.getCollectionPhotos(urlAPI, 1, 100, "Popular")
                .then(toJson)
                .then(jsonData => {
                    console.log("jsonData", jsonData);

                });

因此,目前我的网站在将近 1 周内无法启动,因为我正在等待官方 Unsplash 团队的客户支持端的最终确认或额外帮助。

希望有人可以帮助我澄清代码,以便至少我可以更接近于整理这个“官方认证”流程,并采取更小的步骤来获得我的生产批准访问权限。

先感谢您!

标签: javascriptreactjs

解决方案


给定多次尝试。我无法检索 Access_Token 回复,因为有一个预授权步骤我无法找到任何可行的解决方案。

API 的当前和明确的限制是:


  • 每个 GET 请求最多 30 个图像请求。
  • 官方的 javascript API,Unsplash-Javascript-API ( https://github.com/unsplash/unsplash-js#authorization ) 有效,但没有明确或简单的方法来检索会话使用的“Access_Token”。
  • 在第一次渲染之前使用 ReactJS ContextProvider 函数时,多个异步 AXIOS / FETCH 请求可能无法“成功编译”。因此,将在最终的初始渲染中显示一个空数组。

最终,我选择的解决方案是当前将图像列表分解为最高优先级,限制检索只有 30 张图像,并且仍然存储到原始集合中并检索它。

另一种选择是实际下载图像并将其加载到您自己的服务器上进行加载,这也可能是更快的路线。


可悲的是,Unsplash API 团队对帮助的响应并不频繁,我最后一次联系是大约 1 个月前,尽管我试图更新他们的要求,但此后没有任何反馈。

因此,除非您是付费客户,否则您最好只构建一个替代解决方案而不是依赖团队提供反馈。

祝其他人好运!干杯!


推荐阅读