CORS, adres URL serwera proxy aplikacji oraz wywołania przeglądarki

CORS, adres URL serwera proxy aplikacji oraz wywołania przeglądarki

Skopiuj stronę

Wywoływanie webhooka Shopify Flow z przeglądarki: włączenie CORS, adres URL proxy aplikacji w domenie sklepu i ryzyko ujawnienia tokena.

Wywołanie webhooka odbywa się zazwyczaj między serwerami. Jeśli chcą Państwo wywołać webhook z przeglądarki - ze strony sklepu, strony docelowej lub portalu klienta - należy uwzględnić dwa ustawienia: Włącz CORS oraz Użyj adresu URL proxy aplikacji. Oba znajdują się w sekcji Ustawienia zaawansowane danego webhooka.

Włącz CORS

Przeglądarki odrzucają żądania międzydomenowe, chyba że serwer docelowy wyrazi na to zgodę. Po włączeniu opcji Włącz CORS webhook odpowiada na żądanie wstępne przeglądarki i akceptuje wywołanie.

Funkcja preflight dopuszcza również użycie dowolnego nagłówka zawierającego Państwa token, w tym niestandardowej nazwy nagłówka, którą sami Państwo ustalili, dzięki czemu przeglądarka nie napotka z tym żadnych problemów.

Proszę użyć adresu URL serwera proxy aplikacji

Każdy webhook posiada dwa adresy, przy których w ustawieniach adresu URL znajduje się przycisk „Kopiuj”:

Adres URL Wygląda na to, że Uwagi
Bezpośredni adres URL aplikacji domena naszej aplikacji, zakończona kodem webhooka Działa zawsze, w tym w sklepach w fazie rozwoju oraz w sklepach chronionych hasłem
Adres URL serwera proxy aplikacji ścieżka w domenie należącej do sklepu Pochodzi z tego samego źródła co Państwa witryna, więc przeglądarka traktuje to jako żądanie własne

Proszę włączyć opcję Użyj adresu URL serwera proxy aplikacji, aby opublikować adres serwera proxy. Rozwiązanie to zapewnia bardziej płynną integrację ze sklepem internetowym, a ponieważ pochodzi z tego samego źródła, często nie ma w ogóle potrzeby stosowania CORS.

Co należy wiedzieć przed włączeniem urządzenia:

  • Interfejs sklepu musi być dostępny. W przypadku sklepu chronionego hasłem, takiego jak sklep testowy, adres URL serwera proxy udostępnia dane dopiero po wprowadzeniu hasła do sklepu, dlatego osoby spoza Państwa sklepu nie mogą z niego korzystać.
  • Listy dozwolonych adresów IP nie ma zastosowania do adresu URL serwera proxy: żądania te docierają do nas z serwerów Shopify, więc ich adres nie dostarcza żadnych informacji na temat pierwotnego nadawcy.
  • Shopify podpisuje każde żądanie za pośrednictwem adresu URL serwera proxy. Można to wykorzystać, aby umożliwić wywołanie webhooka wyłącznie zalogowanym klientom, wyłączyć bezpośredni adres URL oraz uzyskać identyfikator klienta w Shopify Flow: zobacz Zalogowani klienci w Państwa sklepie internetowym.

Uwierzytelnianie działa tak samo na obu adresach. Podobnie jest w przypadku Ochrona przed podwójną dostawą, historii oraz limitu planu.

Zezwól na niestandardową treść żądania

Również w sekcji „Ustawienia zaawansowane”: opcja Zezwól na niestandardową treść żądania wyłącza ścisłą weryfikację treści, dzięki czemu webhook akceptuje dowolną strukturę JSON, a nie tylko pola, które zostały przez Państwa zmapowane. Należy z niej skorzystać, gdy treść żądania nadawcy jest dynamiczna lub nie mają Państwo nad nią kontroli. Zmapowane pola nadal trafiają do Shopify Flow w ten sam sposób - zobacz Mapowanie danych użytkowych i zmienne w Shopify Flow.

Powiązane