无法从Adobe Lightroom API获取格式副本



我正在尝试使用Lightroom API从Lightroom Cloud存储中检索图像。我有oauth在工作,我可以做任何事情,但得到一个副本。

我写了下面的脚本来说明我的问题。我可以获取我的目录元数据来获取目录id。我可以使用该目录id来获取资产id。我甚至可以请求该特定资产的元数据,但一旦我尝试获取格式副本,就会出现错误。

# (All personal ids/tokens removed)
CLIENTID=MYCLIENTID
TOKEN=ATOKENFROMOAUTH2
CATALOG_ID=MYCATALOID
AN_ASSET_ID=ANASSETID
# These three all work.
CATALOG_URL="https://lr.adobe.io/v2/catalog"
ASSETS_URL="https://lr.adobe.io/v2/catalogs/${CATALOG_ID}/assets"
ASSET_URL="https://lr.adobe.io/v2/catalogs/${CATALOG_ID}/assets/${AN_ASSET_ID}"
# This one does not.
RENDITION_URL="https://lr.adobe.io/v2/catalogs/${CATALOG_ID}/assets/${AN_ASSET_ID}/renditions/2048"
FILE=`mktemp`
wget --content-on-error -S -O$FILE --header="x-api-key: $CLIENTID" --header="authorization: Bearer $TOKEN" $RENDITION_URL
#tail -n +2 $FILE | jsonpp
cat $FILE

wget的输出:

Resolving lr.adobe.io (lr.adobe.io)... 52.13.231.217, 34.211.127.250, 52.25.171.118
Connecting to lr.adobe.io (lr.adobe.io)|52.13.231.217|:443... connected.
HTTP request sent, awaiting response... 
HTTP/1.1 404 Not Found
Server: openresty
Date: Sat, 26 Mar 2022 17:24:56 GMT
Content-Type: application/json
Content-Length: 130
Connection: keep-alive
X-Result-Code: 1000
X-Result-Subtype: ResourceNotFoundError
X-Request-Id: IDREMOVED
X-Client-Identifier: Wget/1.21.3
X-Traffic-Type: customer
X-Account-Id: IDREMOVED
X-Client-Id: IDREMOVED
Access-Control-Allow-Methods: GET,HEAD,PUT,DELETE,POST,OPTIONS
Access-Control-Max-Age: 60
Access-Control-Allow-Credentials: true
Vary: Origin
Saving to: ‘/var/folders/lh/5yh_y_m92cx8jwhty73958vc0000gn/T/tmp.OR8z0liC’
/var/folders/lh/5yh_y_m9 100%[================================>]     130  --.-KB/s    in 0s      
2022-03-26 13:24:56 ERROR 404: Not Found.
while (1) {}
{"code":1000,"description":"Resource not found","errors":{"type":["not in asset"]},"subtype":"ResourceNotFoundError"}%     

我已经尝试了很多方法。我看过Adobe的示例代码,但我一直无法自己解决这个问题。欢迎提出任何建议。

谢谢你们!

根据HTTP状态代码404和描述显示的not found,您可能需要发出POST请求来生成格式副本(https://developer.adobe.com/lightroom/lightroom-api-docs/api/#operation/generateRenditions)首先从服务器获取格式副本。

最新更新