cron 작업을 사용하여 알림을 보내려고합니다. GCM에서 FCM으로 이전했습니다. 내 서버 측에서는 https://android.googleapis.com/gcm/send to https://fcm.googleapis.com/fcm/send
을 변경했으며 registration_ids
을 to
으로 변경하는 데이터를 요청하는 방법을 업데이트했습니다. 전달 된 json을 확인하는 것이 유효한 json이지만 오류가 발생했습니다. Field "to" must be a JSON string
. 이 문제를 해결할 여지가 있습니까?필드 "to"는 JSON 문자열이어야합니다. [Firebase]
여기 내 코드입니다
function sendNotificationFCM($apiKey, $registrationIDs, $messageText,$id) {
$headers = array(
'Content-Type:application/json',
'Authorization:key=' . $apiKey
);
$message = array(
'to' => $registrationIDs,
'data' => array(
"message" => $messageText,
"id" => $id,
),
);
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_URL => 'https://fcm.googleapis.com/fcm/send',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => json_encode($message)
));
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
것'(문자열)'은'$ 같은 registrationIDs' 변환 "bk3RNwTe3H0 : CI2k_HHwgIpoDKCIZvvD, 1234asd : CI2k_HHwgIpoDKCIZvvD, bk3RNwTe3H0을 : asds_HwgIpoDKCIZvvD을"이? – natsumiyu
아니요. 귀하의'$ registrationIDs' 문자열 배열입니다 같아요. ''to'' 키는 문자열을 필요로하고'$ registrationIDs'는 int 여야 만한다고 가정 했으므로 문자열로 변환하도록 제안했습니다. – jayeshsolanki93
@mori 내 대답을 편집했습니다. 그것을 확인하십시오. – jayeshsolanki93