Согласно О документации Firebase Cloud Messaging Server :
Аутентификация
Чтобы отправить сообщение, сервер приложения выдает запрос POST. Например:
https://fcm.googleapis.com/fcm/send
Запрос сообщения состоит из двух частей: HTTP-заголовка и тела HTTP.
Заголовок HTTP должен содержать следующее: заголовки:
blockquote>
- Авторизация: key = YOUR_SERVER_KEY Убедитесь, что это ключ сервера, значение которого доступно на консоли проекта Firebase в разделе «Настройки проекта»> «Облачные сообщения». Клиентские ключи или любые другие ключи отбрасываются FCM.
- Тип контента:
application/json
для JSON;application/x-www-form-urlencoded;charset=UTF-8
для обычного текста. Если Content-Type опущен, формат считается простым текстом.Надеюсь, что это поможет!
UPDATE ( 2016/11/16)
Возможно, вам стоит рассмотреть использование токена FCM вместо ключей сервера в качестве примечания внутри следующего скриншота
UPDATE (2016/12/08)
Firebase обновила ключи сервера до новой версии и рекомендовала вам перейти на новейшая версия. См. Снимок экрана ниже:
Имеет место это, что весь успокоительный глагол находится под синглом вся транзакция затрагивания?
Нет
если я повышаю Ошибку в проверке или обратных вызовах в какой-либо точке в обработке ОБНОВЛЕНИЯ, УДАЛЯЮ или СОЗДАЮ операцию, каждая операция базы данных, которую я, возможно, выполнил в предыдущих обратных вызовах, также откатываемых?
Нет.
повышение Ошибки на каком-либо обратном вызове или проверке делает это таким образом, что никакое изменение вообще не происходит в базе данных для того действия глагола?
Нет.
Если Вы требуете этого поведения, можно или явно создать транзакции в контроллере (см. примеры, обеспеченные другими пользователями), или используйте around_filter
присоединить поведение ко всем Вашим успокоительным действиям.
По умолчанию нет никакого кода базы данных, записанного в транзакции, необходимо сказать ей делать это в коде.
def create
Model.transaction do
Model.create!(params[:model])
Model.association.create!(params[:association])
end
rescue ActiveRecord::RecordNotSaved, ActiveRecord::RecordInvalid
flash[:notice] = "That record could not be saved."
render :action => "new"
end
Используя #create! методы попытаются сохранить запись и если они перестанут работать, то они повысят исключение, которое будет затем откатывать любой код, уже выполненный в блоке транзакции.
Если Вы не спасете действие, то Вы будете перенаправлены к (я думаю), 405.html в Вашем общедоступном каталоге, если Вы существуете.
Некоторые методы (создают, уничтожают), сразу переходят к базе данных. Транзакции происходят при помощи метода транзакции на классах, полученных из ActiveRecord следующим образом:
Student.transaction do
Course.transaction do
course.enroll(student)
student.units += course.units
end
end
(Этот пример для нескольких баз данных. Для единой базы данных Вам только нужна одна транзакция.)
Можно затем откатывать на этих транзакциях, и исключения, выданные в рамках транзакции, распространены после отката.
Это зависит от базы данных, имеющей транзакции.
NB: сохраняет и уничтожает, перенесены в транзакции.