Google Cloud Messaging Push-уведомление
Можно ли использовать клиент POSTMAN в Google Chrome для отправки сообщения полезной нагрузки на сервер GCM для целей тестирования.
Во-вторых, если да, то какой должен быть отправлен параметр заголовка и url.
Ответы
Ответ 1
Да, вы можете.
1. Отправить уведомление с помощью полезной нагрузки JSON
URL: https://android.googleapis.com/gcm/send
Headers:
- Авторизация: key = < your-api-key >
- Content-Type: application/json
Тело (щелкните на вкладке "raw" ):
{
"collapse_key": "score_update",
"time_to_live": 108,
"delay_while_idle": true,
"data": {
"score": "4x8",
"time": "15:16.2342"
},
"registration_ids":["4", "8", "15", "16", "23", "42"]
}
Примечание: registration_ids
- единственное обязательное поле, все остальные являются необязательными.
2. Отправлять уведомление с помощью текстовой полезной нагрузки
URL: https://android.googleapis.com/gcm/send
Headers:
- Авторизация: key = < your-api-key >
- Content-Type: application/x-www-form-urlencoded; charset = UTF-8
Тело (щелкните по вкладке "x-www-form-urlencoded" ):
collapse_key=score_update
time_to_live=108
delay_while_idle=1
data.score=4x8
data.time=15:16.2342
registration_id=42
Примечание: registration_id
- единственное обязательное поле, все остальные являются необязательными.
Источник: https://developer.android.com/google/gcm/http.html
Ответ 2
Только для записи и для завершения приятного ответа от @Alexandru Rosianu конечная точка GCM изменилась некоторое время назад, и предлагается использовать новую. Вот пример, взятый из официальных документов:
Аутентификация
Чтобы отправить сообщение, сервер приложений выдает запрос POST. Например:
https://gcm-http.googleapis.com/gcm/send
Запрос сообщения состоит из 2 частей: HTTP-заголовка и тела HTTP.
Заголовок HTTP должен содержать следующие заголовки:
-
Authorization
: key = YOUR_API_KEY
-
Content-Type
: application/json
для JSON; application/x-www-form-urlencoded;charset=UTF-8
для обычного текста. Если Content-Type
опущен, формат считается простым текстом.
Например:
Content-Type:application/json
Authorization:key=YOUR_API_KEY
{
"notification": {
"title": "Portugal vs. Denmark",
"text": "5 to 1"
},
"to" : "bk3RNwTe3H0:CI2k_H..."
}
Содержимое тела HTTP зависит от того, используете ли вы JSON или обычный текст. См. Справочник сервера для списка всех параметров, которые могут содержать ваше JSON или текстовое сообщение.
Пример использования Curl:
# curl --header "Authorization: key=YOUR_API_KEY" \
--header Content-Type:"application/json" \
https://gcm-http.googleapis.com/gcm/send \
-d "{\"notification\": { \"title\": \"Portugal vs. Denmark\"," \
"\"text\": \"5 to 1\" }, \"to\" : \"bk3RNwTe3H0:CI2k_H...\" }"
Ответ 3
Да, вы можете использовать POSTMAN.
Этот инструмент проверки уведомлений GCM упрощает тестирование на стороне сервера, уменьшая количество элементов, которые вы вводите в POSTMAN каждый раз - http://techzog.com/development/gcm-notification-test-tool-android/ p >