Anonymous
Сервер Google GCM возвращает несанкционированную ошибку 401
Сообщение
Anonymous » 28 ноя 2024, 22:48
Я использую службы GCM для передачи информации с сервера.
Если я использую ключ браузера, сообщение об успехе отображается как:
{"multicast_id":4849013215736515938,"success":1,"failure":0,"canonical_id s":0,"results":[{"message_id":"0:1348742583011905%2adac3a0f9fd7ecd"}]
но я не получал никаких уведомлений на устройстве.
И если я использую ключ сервера, отображается
Несанкционированная ошибка 401 . Мой код показан ниже:
Код: Выделить всё
$apiKey = "xxxxx";
$registrationIDs = array("xxxxxxxx");
$message = "testing Process";
$url = 'https://android.googleapis.com/gcm/send';
$fields = array(
'registration_ids' => $registrationIDs,
'data' => array("message"=>$message),
);
$headers = array(
'Authorization: key=' . $apiKey,
'Content-Type: application/json'
);
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $url );
curl_setopt( $ch, CURLOPT_POST, true );
curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode($fields) );
$result = curl_exec($ch);
if(curl_errno($ch)){ echo 'Curl error: ' . curl_error($ch); }
curl_close($ch);
echo $result;
Есть идеи?
Подробнее здесь:
https://stackoverflow.com/questions/126 ... -error-401
1732823292
Anonymous
Я использую службы GCM для передачи информации с сервера. Если я использую ключ браузера, сообщение об успехе отображается как: [b]{"multicast_id":4849013215736515938,"success":1,"failure":0,"canonical_id s":0,"results":[{"message_id":"0:1348742583011905%2adac3a0f9fd7ecd"}][/b] но я не получал никаких уведомлений на устройстве. И если я использую ключ сервера, отображается [b]Несанкционированная ошибка 401[/b]. Мой код показан ниже: [code]$apiKey = "xxxxx"; $registrationIDs = array("xxxxxxxx"); $message = "testing Process"; $url = 'https://android.googleapis.com/gcm/send'; $fields = array( 'registration_ids' => $registrationIDs, 'data' => array("message"=>$message), ); $headers = array( 'Authorization: key=' . $apiKey, 'Content-Type: application/json' ); $ch = curl_init(); curl_setopt( $ch, CURLOPT_URL, $url ); curl_setopt( $ch, CURLOPT_POST, true ); curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers); curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true ); curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode($fields) ); $result = curl_exec($ch); if(curl_errno($ch)){ echo 'Curl error: ' . curl_error($ch); } curl_close($ch); echo $result; [/code] Есть идеи? Подробнее здесь: [url]https://stackoverflow.com/questions/12619759/google-gcm-server-returns-unauthorized-error-401[/url]