Google 照片 API - 如何在设置 albumId 的情况下过滤相册以获取照片 (JPEG)?
Google Photos API - How to filter albums to get photos (JPEG) only while having albumId set?
我正在尝试过滤来自 Google 照片 API 的相册内容(仅获取照片),但文档说:
Filters shouldn't be used in a mediaItems:search request if the
albumId is set. If a filter is used when the albumId is set, an
INVALID_ARGUMENT error (400) is returned.
这是否意味着我必须下载所有文件,然后使用 MIME 类型过滤我自己的响应?还是直接在request中也可以?
谢谢!
我的代码:
var params = JSON.parse(localStorage.getItem('oauth2-params'));
var xhr = new XMLHttpRequest();
xhr.open('POST',
'https://photoslibrary.googleapis.com/v1/mediaItems:search?' +
'access_token=' + params['access_token'] +
'&pageSize=25' +
'&albumId=' + albumId +
'&pageToken=' + this.albums[albumId].photos.nextPagination);
xhr.responseType = "json";
xhr.onreadystatechange = (e) => {
if (xhr.readyState === 4 && xhr.status === 200) {
// handling the respons...
} else if(xhr.readyState === 4) {
console.log(xhr.status, xhr.response);
}
};
xhr.send(null);
遗憾的是,您目前无法将媒体类型和专辑都指定为搜索请求的参数。问题跟踪器 here 上有对此的请求。您可以 'star' 问题得到任何更新通知。
现在,您可以自己进行过滤,而无需自己下载文件:检查 mimeType
和 mediaMetadata
media item. The mimeType
field indicates what kind of file it is (for example, image/jpeg
or image/png
). Alternatively, you can also check whether the mediaMetadata
property contains a photo
的属性。
我正在尝试过滤来自 Google 照片 API 的相册内容(仅获取照片),但文档说:
Filters shouldn't be used in a mediaItems:search request if the albumId is set. If a filter is used when the albumId is set, an INVALID_ARGUMENT error (400) is returned.
这是否意味着我必须下载所有文件,然后使用 MIME 类型过滤我自己的响应?还是直接在request中也可以?
谢谢!
我的代码:
var params = JSON.parse(localStorage.getItem('oauth2-params'));
var xhr = new XMLHttpRequest();
xhr.open('POST',
'https://photoslibrary.googleapis.com/v1/mediaItems:search?' +
'access_token=' + params['access_token'] +
'&pageSize=25' +
'&albumId=' + albumId +
'&pageToken=' + this.albums[albumId].photos.nextPagination);
xhr.responseType = "json";
xhr.onreadystatechange = (e) => {
if (xhr.readyState === 4 && xhr.status === 200) {
// handling the respons...
} else if(xhr.readyState === 4) {
console.log(xhr.status, xhr.response);
}
};
xhr.send(null);
遗憾的是,您目前无法将媒体类型和专辑都指定为搜索请求的参数。问题跟踪器 here 上有对此的请求。您可以 'star' 问题得到任何更新通知。
现在,您可以自己进行过滤,而无需自己下载文件:检查 mimeType
和 mediaMetadata
media item. The mimeType
field indicates what kind of file it is (for example, image/jpeg
or image/png
). Alternatively, you can also check whether the mediaMetadata
property contains a photo
的属性。