PHP调用Google Play Store Reviews API认证凭证错误问题求助
排查步骤&解决方案
1. 优先补做Google Play Console权限关联
这是90%同类报错的遗漏点:
- 登录Google Play Console,进入对应应用的「设置」→「API访问」页面
- 确认你当前OAuth授权用的谷歌账号、以及你创建的Service Account,都在权限列表中,且被分配了至少「查看用户反馈和回复评论」的权限,不需要Owner这么高的权限,最小匹配权限即可
- 确认Google Play Console绑定的云项目,就是你创建OAuth Client ID、启用API的那个云项目,不要混用不同项目的配置
2. 调整access_token传递方式
谷歌官方不推荐将access_token放在URL query参数中,部分接口会直接拦截该传参方式,改为Header传递即可,参考代码:
// 先解析你之前获取到的token返回结果 $tokenArr = json_decode($data, true); $accessToken = $tokenArr['access_token']; $ch = curl_init('https://www.googleapis.com/androidpublisher/v3/applications/com.rosterelf.android.phone/reviews'); curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Authorization: Bearer ' . $accessToken, 'Accept: application/json' ]); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); // 建议开启SSL验证避免安全风险 $response = curl_exec($ch); curl_close($ch); var_dump($response);
3. 排查access_token有效性
- 确认你拿到的access_token没有过期,谷歌OAuth颁发的access_token默认有效期仅3600秒,过期需要用返回的refresh_token重新换取新的access_token
- 不要直接拼接在URL中测试,避免特殊字符转义问题导致token失效
- 你之前测试的
/reviews/review是错误接口地址,正确的评论列表接口就是/reviews,不需要加额外后缀
4. 授权范围校验
你获取授权code时用的scope是正确的,无需修改,如果之前授权过其他错误scope,建议清除浏览器缓存重新走一次授权流程,确保授权范围匹配。
内容的提问来源于stack exchange,提问作者Mittul At TechnoBrave
相关产品推荐
相关产品推荐

