Вызов API на стороне сервера на странице корзины Shopify - PullRequest
0 голосов
/ 15 января 2019

В настоящее время мы вызываем сторонний API (наш API для OPT-IN для этого пользователя в нашей системе), используя ajax на странице корзины для функции OPT-IN. Учтите, что пользователь уже создан в нашей системе во время регистрации через webhook. Теперь просто нужно подключиться к этому пользователю.

Но, вызывая API с помощью ajax, мы делаем Access Token Visible. Так что это не безопасный способ реализации API.

Нужен вызов API для создания публичного приложения. При этом проверяем статус пользователя в нашей системе с помощью API. В зависимости от ответа API нужно выбрать Показать / Скрыть одну кнопку (эта кнопка добавляется на странице корзины.). Я говорю о реализации нашего API для создания приложений. Для того API необходим токен доступа, который предоставляется нами.

Итак, в целях безопасности токена доступа необходимо реализовать API на стороне сервера на странице корзины Shopify.

async function getData(){
            const result= await fetch("https://s15.socialannex.net/apiv2/userstatus/SITE_ID/{{ customer.email }}?access_token=ACCESS_TOKEN",{
                method: 'POST',
                data: {
                    'first_name': 'Atul'
                },
            });
            var res = await result.json();
            if(res.error_code == 0){
                $(".join-loyalty-button").css("display","none");
            }
          }

Выше код работает нормально, но это вызов ajax. Я хочу вызвать выше API на стороне сервера.

1 Ответ

0 голосов
/ 15 января 2019

Вы хотите использовать шаблон App Proxy. Смотри документацию здесь:

https://help.shopify.com/en/api/guides/application-proxies

При этом вы можете использовать обратный вызов с помощью Ajax для вашего API с любой информацией, важной для вашего обратного вызова. Пример, идентификатор клиента. Обратный вызов безопасен, и токены безопасности не выставляются. Вы можете вернуть JSON, т. Е. Ваш интерфейсный код может отображать / скрывать кнопки на основе ответа из вашего внутреннего приложения.

...