使用Google People API更新联系人时遇403权限不足错误求助
解决Google People API更新联系人时的403权限不足问题
这个403错误的原因很明确——你的请求用的OAuth认证范围没有获得修改联系人的权限,API直接拒绝了你的更新操作。下面是具体的解决步骤:
确认所需的权限范围
Google People API中,要修改联系人必须使用https://www.googleapis.com/auth/contacts这个权限范围。如果你之前用的是contacts.readonly(只读权限),那肯定会触发这个错误,因为只读权限只能查看联系人,没有修改权限。修改代码中的权限配置
找到你代码里创建授权凭证的部分(就是你写的Creates an authorized Crede...这段逻辑),把权限范围替换成可写的版本。以Java为例,正确的代码应该是这样:import com.google.api.services.people.v1.PeopleServiceScopes; import java.util.Arrays; import java.util.List; // 设置正确的权限范围 List<String> scopes = Arrays.asList(PeopleServiceScopes.CONTACTS);重新完成授权流程
因为之前的授权凭证是基于旧的权限范围生成的,所以你需要清除已有的授权缓存(比如桌面应用里存储的token文件,或者Web应用里用户的授权会话),然后重新让用户登录授权。这样新的权限范围才会被应用到后续的请求中。
做完这三步,再尝试更新联系人,应该就能正常执行了。
内容的提问来源于stack exchange,提问作者Bruno Araújo
相关产品推荐
相关产品推荐

