Когда делают транзакции запускаются при использовании (успокоительных) направляющих

Согласно О документации Firebase Cloud Messaging Server :

Аутентификация

Чтобы отправить сообщение, сервер приложения выдает запрос POST. Например:

https://fcm.googleapis.com/fcm/send

Запрос сообщения состоит из двух частей: HTTP-заголовка и тела HTTP.

Заголовок HTTP должен содержать следующее: заголовки:

  • Авторизация: key = YOUR_SERVER_KEY Убедитесь, что это ключ сервера, значение которого доступно на консоли проекта Firebase в разделе «Настройки проекта»> «Облачные сообщения». Клиентские ключи или любые другие ключи отбрасываются FCM.
  • Тип контента: application/json для JSON; application/x-www-form-urlencoded;charset=UTF-8 для обычного текста. Если Content-Type опущен, формат считается простым текстом.
blockquote>

Надеюсь, что это поможет!


UPDATE ( 2016/11/16)

Возможно, вам стоит рассмотреть использование токена FCM вместо ключей сервера в качестве примечания внутри следующего скриншота


UPDATE (2016/12/08)

Firebase обновила ключи сервера до новой версии и рекомендовала вам перейти на новейшая версия. См. Снимок экрана ниже:

7
задан Peter Hoffmann 20 October 2008 в 23:02
поделиться

3 ответа

Имеет место это, что весь успокоительный глагол находится под синглом вся транзакция затрагивания?

Нет

если я повышаю Ошибку в проверке или обратных вызовах в какой-либо точке в обработке ОБНОВЛЕНИЯ, УДАЛЯЮ или СОЗДАЮ операцию, каждая операция базы данных, которую я, возможно, выполнил в предыдущих обратных вызовах, также откатываемых?

Нет.

повышение Ошибки на каком-либо обратном вызове или проверке делает это таким образом, что никакое изменение вообще не происходит в базе данных для того действия глагола?

Нет.

Если Вы требуете этого поведения, можно или явно создать транзакции в контроллере (см. примеры, обеспеченные другими пользователями), или используйте around_filter присоединить поведение ко всем Вашим успокоительным действиям.

4
ответ дан 7 December 2019 в 03:23
поделиться

По умолчанию нет никакого кода базы данных, записанного в транзакции, необходимо сказать ей делать это в коде.

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 в Вашем общедоступном каталоге, если Вы существуете.

4
ответ дан 7 December 2019 в 03:23
поделиться

Некоторые методы (создают, уничтожают), сразу переходят к базе данных. Транзакции происходят при помощи метода транзакции на классах, полученных из ActiveRecord следующим образом:

Student.transaction do
  Course.transaction do
    course.enroll(student)
    student.units += course.units
  end
end

(Этот пример для нескольких баз данных. Для единой базы данных Вам только нужна одна транзакция.)

Можно затем откатывать на этих транзакциях, и исключения, выданные в рамках транзакции, распространены после отката.

Это зависит от базы данных, имеющей транзакции.

NB: сохраняет и уничтожает, перенесены в транзакции.

1
ответ дан 7 December 2019 в 03:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: