Google Cloud Messaging Push-уведомление

могу ли я использовать POSTMAN client в Google Chrome для отправки сообщения полезной нагрузки на сервер GCM для тестирования. Во-вторых, если да, то каков параметр заголовка и url для отправки.

3 ответов


Да, вы можете.

1. Отправить уведомление с полезной нагрузкой JSON

URL:https://android.googleapis.com/gcm/send

заголовки:

  • авторизация: ключ=
  • тип контента: 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

заголовки:

  • авторизация: ключ=
  • 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


просто для записи и для завершения хорошего ответа от @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...\" }"

Да, вы можете использовать почтальона.

этот инструмент тестирования уведомлений GCM значительно упрощает тестирование на стороне сервера, уменьшая количество элементов, которые вы вводите в POSTMAN каждый раз -http://techzog.com/development/gcm-notification-test-tool-android/