Не получается создать виджеты Amazon Pay

187
17 сентября 2017, 02:15

Не могу заставить работать виджет Amazon Pay (Address Book). Код html-страницы:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script type='text/javascript'>
        window.onAmazonLoginReady = function() {
            amazon.Login.setClientId('amzn1.application-oa2-client.96328af648a14ee984ff2529df2906b2');
            amazon.Login.setUseCookie(true);
        };
        window.onAmazonPaymentsReady = function() {
            showButton();
        };
    </script>
    <script async="async" src='https://static-fe.payments-amazon.com/OffAmazonPayments/jp/js/Widgets.js'>
    </script>
</head>
<body>
<div id="AmazonPayButton"></div>
<a href="#" id="Logout">Logout</a>
<div id="addressBookWidgetDiv" style="height: 400px;"></div>
<script type="text/javascript">
    function showButton() {
        var authRequest;
        OffAmazonPayments.Button("AmazonPayButton", "AC0ND72N3R7GI", {
            type: "LwA",
            color: "Gold",
            size: "medium",
            authorization: function () {
                loginOptions = {
                    scope: "profile",
                    popup: true
                };
                authRequest = amazon.Login.authorize(loginOptions, function(){
                    new OffAmazonPayments.Widgets.AddressBook({
                        sellerId: 'AC0ND72N3R7GI',
                        onOrderReferenceCreate: function(orderReference) {
                        },
                        design: {
                            designMode: 'responsive'
                        },
                        onError: function(error) {
                            console.log(error.getErrorCode() + ': ' + error.getErrorMessage());
                        }
                    }).bind("addressBookWidgetDiv");
                });
            },
            onError: function (error) {
                console.log("The following error occurred: "
                        + error.getErrorCode()
                        + ' - ' + error.getErrorMessage());
            }
        });
    }
</script>
<script type="text/javascript">
    document.getElementById('Logout').onclick = function() {
        amazon.Login.logout();
    };
</script>
</body>
</html>

Пример кода брался отсюда (без использования PHP):

https://github.com/amzn/amazon-pay-sdk-samples/blob/master/PHP/Callback/index.php

Кнопка логина (AmazonPayButton) вроде бы работает нормально (попап-окно открывается, логин происходит). Но виджет не грузится и выдает такую ошибку:

Buyer's session with Amazon has expired. The buyer must sign in before you render the widget.

Аналогичная ситуация происходит также и в sandbox mode с тестовым аккаунтом. Может ли это быть проблема на стороне селлера? Или, может быть, это из-за японской версии widgets.js (т.к. аккаунт селлера находится в японском регионе). Заранее спасибо за помощь.

READ ALSO
как установить reCaptcha на свой сайт

как установить reCaptcha на свой сайт

Всем привет, возникла следующая проблема по вопросу безопасности на сайтеХотелось бы использовать стандартную reCaptcha'у от гугла

238
индексировать сайт и обойти verify страница

индексировать сайт и обойти verify страница

На сайте нужен verify 18+ но проблема такая google bot, yandex bot будут сканировать только этот страница (verifyphp) как могу дать им доступ на сайт без verify чтобы...

258
Выводит результат одной строкой PHP query

Выводит результат одной строкой PHP query

Хочу вывести все содержимое ссылок по отдельности, а он соединяет и выводит одной большой строкой

179
Почему не работает регулярка на php?

Почему не работает регулярка на php?

Регулярка на php должна находить слово "культурист" либо в начале строки, либо в конце либо, если оно в середине окружено круглыми скобками...

257