我们使用以下方法将联系人从php应用程序保存到Google联系人中 $contact->save();
直到最近,当我们的应用程序联系人中的任何一个都没有在Google联系人中更新/保存时,这种方法一直有效。
Google是否修改了我们需要更新代码以调用新api /功能的任何api?我检查了文档,但找不到任何东西。
码:
$people = new GooglePeople($googleOAuth2Handler);
$contact = $people->get($google_id);
$contact->save(); //This is the function which no longer works, but there is no error thrown.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
根据您的描述,您遇到的问题可能是由于Google API的更新或更改导致的。虽然我主要基于阿里云产品知识提供帮助,但我可以给您一些建议来排查和解决这个问题。
检查API版本和更新: 首先,请确保您使用的Google People API客户端库是最新的。Google经常会更新其API,并可能在新版本中对某些方法进行修改或弃用。访问Google的API文档页面(例如:https://developers.google.com/people/api/rest/v1/people/updateContact)查看是否有任何关于save()
方法变更的通知,或者是否有推荐的新方法来更新联系人信息。
错误处理和日志记录: 即使没有抛出错误,也建议您添加详细的错误处理和日志记录机制到您的代码中。这样可以帮助您捕捉到可能发生的静默错误或警告,从而更好地理解问题所在。
使用updateContact方法: 如果直接的save()
方法不再工作,可能需要改为使用更具体的API调用来更新联系人。根据Google People API的文档,您可能需要使用people.updateContact
方法来明确更新一个联系人。这通常涉及到构造一个新的联系人资源并调用更新接口。
示例代码片段(请根据实际库的使用方法调整):
$updatedContact = new Google_Service_PeopleService_Contact();
// 设置或更新$updatedContact的属性...
$peopleService = new Google_Service_PeopleService($googleOAuth2Handler);
$result = $peopleService->people->updateContact('people/' . $google_id, $updatedContact);
查看API权限和配额: 确保您的应用程序具有足够的权限来执行所需的API操作,并且没有达到API调用的配额限制。
开发者论坛和官方支持: 如果上述步骤不能解决问题,建议您查阅Google的开发者论坛、Stack Overflow上的相关问题,或者直接联系Google Cloud Support获取帮助。有时候,其他开发者可能已经遇到了相同的问题并分享了解决方案。
希望这些建议能帮助您解决问题。如果您的问题与阿里云服务有关,请随时告诉我,我会提供更具体的帮助。