Имам няколко php файла, отговорни за GCM операциите, съхранени на моя сървър, те изглежда работят добре, когато искат, но често връщат грешка, която гласи:
Грешка при извиване: Операцията изтече след 0 милисекунди с 0 от 0 получени байта
Това проблем със сървъра ли е или проблем с моя GCM код? По-долу е моят php файл:
<?php
$message = urldecode($_POST['message']);
$order = urldecode($_POST['order']);
$registrationIDs = urldecode($_POST['registrationIDs']);
$apiKey = "API_KEY";
$tableID = urldecode($_POST['tableID']);
$url = 'https://android.googleapis.com/gcm/send';
$fields = array(
'registration_ids' => array($registrationIDs),
'data' => array(
'message' => $message,
'tableID' => $tableID,
'order' => $order
),
);
$headers = array(
'Authorization: key=' . $apiKey,
'Content-Type: application/json'
);
// Open connection
$ch = curl_init();
// Set the url, number of POST vars, POST data
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_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
// Execute post
$result = curl_exec($ch);
if(curl_errno($ch)) {
echo 'Curl error: ' . curl_error($ch);
}
// Close connection
curl_close($ch);
echo $result;
?>