Dynamiczna, spersonalizowana treść e-maili często wymaga uwierzytelnienia użytkownika. Jednak ze względu na ochronę danych użytkowników wszystkie żądania HTTP wysyłane z adresów e-mail AMP w Gmailu są przesyłane przez serwer proxy i nie zawierają plików cookie.
Aby uwierzytelnić żądania wysyłane z e-maili w wersji AMP, możesz używać tokenów dostępu.
Tokeny dostępu
Do uwierzytelniania użytkowników możesz używać tokenów dostępu. Tokeny dostępu są dostarczane i sprawdzane przez nadawcę e-maila. Nadawca używa tokenów, by mieć pewność, że tylko osoby z dostępem do e-maila w wersji AMP mogą wysyłać żądania zawarte w tym e-mailu. Tokeny dostępu muszą być bezpieczne kryptograficznie oraz mieć ograniczony czas i zakres. Są one umieszczone w adresie URL żądania.
Ten przykład pokazuje, jak za pomocą interfejsu <amp-list>
wyświetlać uwierzytelnione dane:
<amp-list src="https://example.com/endpoint?token=REPLACE_WITH_YOUR_ACCESS_TOKEN"
height="300">
<template type="amp-mustache">
...
</template>
</amp-list>
Podobnie, gdy używasz <amp-form>
, umieść token dostępu pod adresem URL action-xhr
.
<form action-xhr="https://example.com/endpoint?token=REPLACE_WITH_YOUR_ACCESS_TOKEN" method="post">
<input type="text" name="data">
<input type="submit" value="Send">
</form>
Przykład
Poniższy przykład przedstawia hipotetyczną usługę do robienia notatek, która umożliwia zalogowanym użytkownikom dodawanie notatek do konta i ich wyświetlanie w późniejszym czasie. Usługa chce wysłać do użytkownika (jane@example.com
) e-maila z listą zapisanych wcześniej notatek. Lista notatek bieżącego użytkownika jest dostępna w punkcie końcowym https://example.com/personal-notes
w formacie JSON.
Przed wysłaniem e-maila usługa generuje bezpieczny kryptograficznie bezpieczny token dostępu o ograniczonym wykorzystaniu dla jane@example.com: A3a4roX9x
. Token dostępu znajduje się w nazwie pola exampletoken
w zapytaniu z adresem URL:
<amp-list src="https://example.com/personal-notes?exampletoken=A3a4roX9x" height="300">
<template type="amp-mustache">
<p>{{note}}</p>
</template>
</amp-list>
Punkt końcowy https://example.com/personal-notes
odpowiada za weryfikację parametru exampletoken
i znajdowanie użytkownika powiązanego z tokenem.
Więcej informacji znajdziesz w artykule o tokenach dostępu do ograniczonego użycia.