이전 글에서는 FCM 클라우드 메시지를 어떻게 구성해야 하는지에 대해서 다뤄봤습니다.
이를 정리한 표를 다시 한번 보면 다음과 같습니다.
HTTP 메시지를 보내는 방법 중 상당히 원시적인 cURL을 이용한 방법으로 클라우드 메시지를 보내 보도록 하겠습니다.
cURL (https://curl.haxx.se/)은 HTTP 뿐만 아니라 Telnet, SMTP, POP3, LDAP 등등 다양한 프로토콜을 지원하는 프로그램입니다. 웬만한 Unix 계열 운영체제에는 기본적으로 설치되어 있으나 윈도우에서는 아직까지(?) 바이너리를 직접 다운로드 받을 수 없고 Cygwin terminal에서 cURL을 사용하는 것을 권장하고 있으니 여기서도 그 방법으로 해보도록 하겠습니다.
혹시 Cygwin의 설치가 필요하다면 Cygwin 설치 및 설정 (http://zeany.net/15) 를 참조하시기 바랍니다.
그리고 설치할 때 curl을 검색하여 추가로 설치하지 않았다면 Cygwin에 신규 패키지 설치 (http://zeany.net/29)를 참조하세요. 이 글에서는 vim을 설치하는 것을 예제로 했으니 여기서 curl을 추가하는 화면만 있으면 될 것 같습니다.
설치가 완료되었으면 curl --version 이나 curl --help로 제대로 설치가 되었는지와 어떤 옵션들이 있는지 살펴봅시다.
curl은 워낙 지원하는 프로토콜이 많아서 옵션들이 대부분 중복으로 사용되게 됩니다.
자세한 매뉴얼은 https://curl.haxx.se/docs/manpage.html 에 나와있습니다.
cURL을 이용하여 위의 메시지를 보내기 위해 필요한 옵션은 다음과 같습니다.
이를 바탕으로 명령을 만들어보면 다음과 같습니다.
curl -X POST --header "Authorization: key=your key" --header "Content-Type: application/json" https://fcm.googleapis.com/fcm/send -d '{"to" : "your token", "priority" : "high", "notification" : { "body" : "Background Message", "title" : "BG Title" }, "data" : { "title" : "FG Title", "message" : "Foreground Message" }}'
정상적인 메시지라면 다음처럼 응답 메시지가 오게 됩니다.
만약 잘못된 옵션(여기서는 서버키)을 주게 되면 에러가 HTTP Response로 오게 됩니다.
이상으로 cURL을 이용한 FCM 클라우드 메시지 보내기에 대한 글을 마칩니다.
예전에는 별 불편함없이 cURL을 사용했던 것 같은데, 지금은 좀 더 쉽고 편리하게 보낼 수 있는 방법들이 있습니다.
다음 글에서는 Postman이라는 크롬 앱을 이용해 클라우드 메시지를 전송해 보도록 하겠습니다.
'Android' 카테고리의 다른 글
안드로이드 Notification Icon 생성 예제 (1) | 2017.01.15 |
---|---|
Postman을 이용한 FCM 클라우드 메시지 전송 (2) | 2017.01.13 |
FCM 클라우드 메시지의 형식 정리 (0) | 2017.01.12 |
FCM을 이용해 안드로이드 앱으로 메시지 전송 (2) (3) | 2017.01.10 |
FCM을 이용해 안드로이드 앱으로 메시지 전송 (1) (1) | 2017.01.10 |