Я пишу сценарий PHP с использованием cURL для обновления нескольких полей в документе Firestore через API-интерфейс FESTtore Firestore. Моя проблема в том, что когда я запускаю скрипт, он заменяет весь документ полями, которые я пытаюсь обновить, как будто он просто выполняет PUT. Может ли кто-нибудь помочь мне с этим фрагментом PHP?
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'PATCH',
CURLOPT_HTTPHEADER => array('Content-Type: application/json',
'Content-Length: ' . strlen($json),
'X-HTTP-Method-Override: PATCH'),
CURLOPT_URL => $url . '?key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
CURLOPT_USERAGENT => 'cURL',
CURLOPT_POSTFIELDS => $json
));
$response = curl_exec( $curl );
curl_close( $curl );
Есть ли что-то очевидное, что я здесь упускаю, чтобы это воспринималось как ПАТЧ из Firestore? Есть ли какой-нибудь достойный способ узнать, что Firestore получает от моего скрипта?
Задача ещё не решена.
Других решений пока нет …