Unsplash API - 通过 ID 访问特定照片

vii*_*vii 1 python api rest insomnia

我想通过 Unsplash API 和给定的照片 ID 访问特定照片。不幸的是我的方法没有成功,而且谷歌上似乎还没有其他人尝试过。

\n

先决条件

\n\n

Unsplash API 文档

\n

如此处所述

\n
Endpoint: https://api.unsplash.com/\n\nGET /photos/:id\n
Run Code Online (Sandbox Code Playgroud)\n

提供照片 ID以及您的访问密钥作为参数

\n
    \n
  • 示例照片: https: //unsplash.com/photos/nDV6ahWLvEg \n
      \n
    • 最后一部分是照片 ID(我认为,根据我所做的阅读):nDV6ahWLvEg
    • \n
    \n
  • \n
  • 提供您的访问密钥client_id,例如123123123123
  • \n
\n

我的完整 GET 字符串:

\n
https://api.unsplash.com/photos/:id?id=nDV6ahWLvEg&client_id=123123123123\n
Run Code Online (Sandbox Code Playgroud)\n

错误响应

\n

我总是得到一个404 - Couldn\'t find photo. 授权有效,尝试使用其他 unsplash 端点。尝试通过 python \xc2\xb4request` 包和 Insomnia(REST 客户端)访问它,两者都是相同的错误。还尝试了“集合端点”,它也需要一个 id(集合 id) - 错误 404。

\n

我假设我做错了什么:id ? id = ...

\n
\n

有人有想法吗?谢谢。

\n

Pas*_*lco 5

RESTful API 可以使用不同类型的参数,例如

  • 查询参数:它们出现在 URL 末尾问号之后
  • 路径参数:它们添加在端点路径中问号之前

Unsplash API 使用这两种类型的参数。client_id是查询参数,id是路径参数。您可以通过文档 ( ) 中使用的冒号 (:) 来识别这一点/photos/:id

因此,您必须替换:id为实际的照片 ID。您的请求看起来像:

https://api.unsplash.com/photos/nDV6ahWLvEg?client_id=YOUR_ACCESS_KEY
Run Code Online (Sandbox Code Playgroud)