Spec-Zone.ru › Web APIs

PaymentRequestEvent

Ограниченная доступность

Эта функция не относится к Baseline, так как она не работает в некоторых из самых широко используемых браузеров.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Экспериментальная: Это экспериментальная технология
Внимательно проверьте таблицу совместимости с браузерами перед использованием в рабочей среде.

Примечание: Эта функция доступна только в Service Workers.

Интерфейс PaymentRequestEvent API Payment Handler — это объект, передаваемый обработчику платежей при выполнении PaymentRequest.

Событие ExtendableEvent PaymentRequestEvent

Конструктор

PaymentRequestEvent() Экспериментальная

Создает новый экземпляр объекта PaymentRequestEvent.

Свойства экземпляра

instrumentKey Только для чтения Устаревший Нестандартный

Возвращает объект, отражающий выбранный пользователем инструмент платежа, или пустую строку, если пользователь не зарегистрировал или не выбрал инструмент платежа.

methodData Только для чтения Экспериментальная

Возвращает массив объектов, содержащих идентификаторы способов оплаты, которые принимает сайт, а также любые связанные данные, специфичные для способа оплаты.

modifiers Только для чтения Экспериментальная

Возвращает массив объектов, содержащих изменения в платежных данных.

paymentRequestId Только для чтения Экспериментальная

Возвращает идентификатор объекта PaymentRequest.

paymentRequestOrigin Только для чтения Экспериментальная

Возвращает происхождение, где был инициализирован объект PaymentRequest.

topOrigin Только для чтения Экспериментальная

Возвращает основное происхождение, где был инициализирован объект PaymentRequest.

total Только для чтения Экспериментальная

Возвращает общую сумму, запрашиваемую для оплаты.

Методы экземпляра

changePaymentMethod() Экспериментальная

Получает обновлённую сумму, учитывая подробности способа оплаты.

openWindow() Экспериментальная

Открывает указанный URL в новом окне, если и только если данный URL находится в том же происхождении, что и вызывающая страница. Возвращает Promise, который разрешается ссылкой на WindowClient.

respondWith() Экспериментальная

Предотвращает обработку события по умолчанию и позволяет указать Promise для объекта PaymentResponse самостоятельно.

Примеры

При вызове метода PaymentRequest.show() происходит срабатывание события paymentrequest в сервисном работнике приложения для платежей. Это событие обрабатывается внутри сервисного работника приложения для платежей для начала следующей стадии процесса оплаты.

let payment_request_event;
let resolver;
let client;

// `self` is the global object in service worker
self.addEventListener("paymentrequest", async (e) => {
  if (payment_request_event) {
    // If there's an ongoing payment transaction, reject it.
    resolver.reject();
  }
  // Preserve the event for future use
  payment_request_event = e;

  // ...
});

При получении события paymentrequest, приложение для платежей может открыть окно обработчика платежей, вызвав PaymentRequestEvent.openWindow(). Окно обработчика платежей представит клиенту интерфейс приложения для платежей, где он сможет пройти аутентификацию, выбрать адрес доставки и опции, а также авторизовать оплату.

После обработки платежа, используется PaymentRequestEvent.respondWith() для возврата результата платежа на веб-сайт продавца.

См. Получение события запроса платежа от продавца для получения более подробной информации об этой стадии.

Спецификации

Спецификация
Payment Handler API
# the-paymentrequestevent

Совместимость с браузерами

Настольный Мобильный
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
PaymentRequestEvent 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет
PaymentRequestEvent 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет
changePaymentMethod 76 79 Нет 63 Нет 76 Нет 54 Нет 12.0 Нет
changeShippingAddress 80 80 Нет 67 Нет 80 Нет 57 Нет 13.0 Нет
changeShippingOption 80 80 Нет 67 Нет 80 Нет 57 Нет 13.0 Нет
instrumentKey 70–111 79–111 Нет 57–97 Нет 70–111 Нет 49–75 Нет 10.0–22.0 Нет
methodData 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет
modifiers 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет
openWindow 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет
paymentOptions 80 80 Нет 67 Нет 80 Нет 57 Нет 13.0 Нет
paymentRequestId 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет
paymentRequestOrigin 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет
respondWith 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет
shippingOptions 80 80 Нет 67 Нет 80 Нет 57 Нет 13.0 Нет
topOrigin 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет
total 70 79 Нет 57 Нет 70 Нет 49 Нет 10.0 Нет

См. также

  • Обзор веб-приложений для платежей
  • Настройка метода оплаты
  • Жизненный цикл платежной транзакции
  • Использование API запроса платежа
  • Понятия обработки платежей

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PaymentRequestEvent

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API