GCM 오류=JSON을 통해 메시지를 보내는 등록
Fiddler를 통해 Push GCM을 테스트하고 있습니다.
머리글:
User-Agent: Fiddler
Authorization: key=AIzaSyAkXfcuLLCZ-5n18wwO6XeJ13g-z9ja
Host: android.googleapis.com
Content-Length: 286
본문:
{"registration_ids":["APA91bHyn8YHcH_vSuOo7_A0PMgF5SU1K0FebOFGKXYTqpN5x4eD0tVBvzQLn749TVcczN5gSjB1wqf5AzYfxFI_qskA1Nzipf-9MfdEom1PI1vkFqKIg9B8vZvPLOLozE7jaRzELuyDzpFRbO3Xh5lT-KDA"],"collapse_key":"8b990f5a-78fc-4bad-b242-ffc740a750fb","data":{"message":"message to device"}}
오류가 있습니다.
Error=MissingRegistration
내 문제는 어디 있지?모든 ID가 올바릅니다.
헤더에 콘텐츠유형을 JSON으로 지정하는 것을 잊어버렸을 가능성이 있습니다.
Content-Type: application/json
Content-Type이 생략된 경우 형식은 일반 텍스트로 간주됩니다.
일반 텍스트의 경우 등록 ID는 다음과 같은 파라미터로 전달됩니다.registration_id
대신registration_ids
그 때문에,MissingRegistration
에러입니다.
새로운 클라우드 메시지에서는 서버에서 dwonstream 메시지를 보낼 때 "to"를 사용하여 대상 등록 ID를 해제해야 합니다.
다음과 같습니다.
https://gcm-http.googleapis.com/gcm/send
Content-Type:application/json
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA
{ "data": {
"score": "5x1",
"time": "15:10"
},
"to" : "APA91bHun4MxP5egoKMwt2KZFBaFUH-1RYqx..."
}
Firebase의 경우 https://firebase.google.com/docs/cloud-messaging/http-server-ref#error-codes에서 정보를 얻을 수 있습니다.
요청에 등록 토큰이 포함되어 있는지 확인합니다(플레인텍스트 메시지의 registration_id 또는 JSON의 to 또는 registration_ids 필드).
스위프트 5
In my case receiver token was missing and after put the fcm receiver token its work fine for me
언급URL : https://stackoverflow.com/questions/22486192/gcm-error-missingregistration-sending-messages-via-json
'programing' 카테고리의 다른 글
스토어드 프로시저의 영향을 받는 레코드의 수를 취득하려면 어떻게 해야 합니까? (0) | 2023.03.11 |
---|---|
json_false()는 false를 반환합니다. (0) | 2023.03.11 |
AngularJs: 새로고침 페이지 (0) | 2023.03.11 |
"Stateless function components cannot be refs"는 무슨 뜻입니까? (0) | 2023.03.11 |
ng-bind-html-unsafe를 제거한 상태에서 HTML을 삽입하려면 어떻게 해야 하나요? (0) | 2023.03.11 |