14

我正在尝试从 Google+ API 中提取 JSON 数据。当我包含图片属性时,图片的大小设置为50px。如何更改图像大小?我在文档上看不到它。

获取https://www.googleapis.com/plus/v1/people/100300281975626912157?fields=image&key={YOUR_API_KEY}

回复

{
 "image": {
  "url": "https://lh3.googleusercontent.com/-U353P5vNuRE/AAAAAAAAAAI/AAAAAAAABKM/a7U7bq251x0/photo.jpg?sz=50"
 }
}
4

4 回答 4

19

在 URL 字符串的末尾有一个名为 sz=50 的属性

我只是试图改变属性,结果图像的大小也改变了。

试试这两个网址:

https://lh3.googleusercontent.com/-U353P5vNuRE/AAAAAAAAAAI/AAAAAAAABKM/a7U7bq251x0/photo.jpg?sz=50

https://lh3.googleusercontent.com/-U353P5vNuRE/AAAAAAAAAAI/AAAAAAAABKM/a7U7bq251x0/photo.jpg?sz=150

看到不同?

于 2012-12-24T11:48:22.750 回答
5

只需要更改 sz 后缀来表示 wnated 大小,这里是后缀:

https://lh3.googleusercontent.com/-U353P5vNuRE/AAAAAAAAAAI/AAAAAAAABKM/a7U7bq251x0/photo.jpg尺寸=150

如果你剪切参数,你会得到默认的照片大小

https://lh3.googleusercontent.com/-U353P5vNuRE/AAAAAAAAAAI/AAAAAAAABKM/a7U7bq251x0/photo.jpg

并自动更改字符串: https ://jsfiddle.net/upyL4onm/3/

var newSize="300"
var str = "https://lh3.googleusercontent.com/-U353P5vNuRE/AAAAAAAAAAI/AAAAAAAABKM/a7U7bq251x0/photo.jpg?sz=50";
var res = str.split("?sz=50")[0]+"?sz="+newSize;

console.log(res) 将输出:

https://lh3.googleusercontent.com/-U353P5vNuRE/AAAAAAAAAAI/AAAAAAAABKM/a7U7bq251x0/photo.jpg?sz=300

于 2015-09-25T22:06:16.747 回答
4

谷歌图片有两种:

  1. 用户上传的个人资料图片(以 s96-c 结尾)
  1. Google 生成的图片(以 photo.jpg 结尾)

将 {anyhighernumber} 替换为您想要的分辨率,例如:1500

于 2021-01-06T18:19:04.633 回答
2

因为在 api 中没有办法做到这一点,你可以使用sustr删除?str=并添加你自己的:

$imageUrl = substr($user['image']['url'],0,strpos($user['image']['url']."?sz=","?sz=")) . '?sz=100';

或者对于 javascript:

iamgeUrl=user[image][url].substr(0,user[image][url].indexOf('?str=')) + '?sz=100';
于 2015-03-26T11:19:27.973 回答