我traying创建一个新的联系人在我的谷歌帐户使用GoogleAPIClient库。
我的函数代码是这样的:
public function createContact(Google_Client $client, $nombre, $telefonos, $correo, $biografia)
{
$service = new Google_Service_PeopleService($client);
// Crear una nueva persona y establecer su nombre, número de teléfono y biografía
$person = new Google_Service_PeopleService_Person();
$name = new Google_Service_PeopleService_Name();
$name->setGivenName($nombre);
$person->setNames([$name]);
// Crear una lista para almacenar los números de teléfono
$phoneNumbersList = [];
foreach ($telefonos as $telefono){
$phoneNumber = new Google_Service_PeopleService_PhoneNumber();
$phoneNumber->setValue($telefono);
// Añadir el número de teléfono a la lista
$phoneNumbersList[] = $phoneNumber;
}
// Establecer los números de teléfono del contacto a la lista que acabamos de crear
$person->setPhoneNumbers($phoneNumbersList);
$emailAddress = new Google_Service_PeopleService_EmailAddress();
$emailAddress->setValue($correo);
$person->setEmailAddresses([$emailAddress]);
$biography = new Google_Service_PeopleService_Biography();
$biography->setValue($biografia);
$person->setBiographies([$biography]);
// Crear el contacto
$createdContact = $service->people->createContact($person, [
'personFields' => 'names,phoneNumbers,emailAddresses,biographies'
]);
// Obtener el ID del contacto creado
$contactId = $createdContact->getResourceName();
return $contactId;
}
当我执行这个函数时,它给予我这样的响应:
{
"error": {
"code": 400,
"message": "readMask is required. Please specify one or more valid paths. Valid paths are documented at https://developers.google.com/people/api/rest/v1/people/get.",
"errors": [
{
"message": "readMask is required. Please specify one or more valid paths. Valid paths are documented at https://developers.google.com/people/api/rest/v1/people/get.",
"domain": "global",
"reason": "badRequest"
}
],
"status": "INVALID_ARGUMENT"
}
}
我不undesrtand为什么我得到这个错误,我已经有一个readMask.我也尝试创建联系人使用此其他执行:
$createdContact = $service->people->createContact($person, [
'requestMask.includeField' => 'person.metadata,person.names,person.phoneNumbers,person.emailAddresses,person.biographies'
]);
$service->people->createContact($person, ['readMask' => 'names,emailAddresses,phoneNumbers,biographies']);
$service->people->createContact($person, ['personFields' => ['names', 'emailAddresses', 'phoneNumbers', 'biographies']]);
给出的答案总是一样的。
我还需要什么吗?我的功能有问题吗?
1条答案
按热度按时间ymzxtsji1#
我在这个过程中的某个地方也出现了同样的错误。下面的代码对我来说很有效。也许这会让你走上正确的道路,或者你可以在此基础上建立: