PHP - 如何使用PHP更新/删除联系人(谷歌人)



3天我很生气,因为谷歌没有PHP教程。 (对不起,我的英语不好(

我在更新名称时遇到错误:

$client=client_google();
$google_id="people/c3062123412341234";
if ($client->getAccessToken() == "") return null;
$people_service = new Google_Service_PeopleService($client);
$person = new Google_Service_PeopleService_Person();
if($tipenya == "Cancel"){
$name = new Google_Service_PeopleService_Name();
$name->SetFamilyName("Keluarga Cemara");
$name->SetGivenName("Tampan");
$person->setNames($name);
$profile = $people_service->people->get(
$google_id, 
array('personFields' => 'metadata'));
$etag = $profile->etag;
$person->setEtag($etag);
$person->setResourceName($google_id);
if($google_id !=''){
//$people_service->people->updatePersonField("names");
$people_service->people->updateContact($google_id,$person);
}
}else if($tipenya=="Delete"){
if($google_id !=''){
$person->setResourceName($google_id);
$people_service->people->deleteContact($person);
}
}

执行时出错:

异常"Google_Service_Exception",消息为"{ "错误":{ "代码":400, "消息": "更新人员字段掩码是必需的。请指定一个或多个有效路径。有效路径记录在 https://developers.google.com/people/api/rest/v1/people/update.", "错误":[ { "消息": "更新人员字段掩码是必需的。请指定一个或多个有效路径。有效路径记录在 https://developers.google.com/people/api/rest/v1/people/update.", "域": "全局", "原因":"错误请求" } ], "状态": "INVALID_ARGUMENT" }}'

您需要指定参数updatePersonFields。似乎通过查看文档中的读取示例,参数作为最后一个参数传递。它可能应该看起来像这样:

$params = array('updatePersonFields' => 'names,emailAddresses');
$people_service->people->updateContact($google_id,$person,$params);

我还没有测试过上面的内容,所以这可能不是确切的语法。

最新更新