Dynamiczne, spersonalizowane treści e-maili często wymagają uwierzytelnienia użytkownika. Jednak ze względu na ochronę danych użytkowników wszystkie żądania HTTP wysyłane z e-maili AMP w Gmailu są przekierowywane przez serwer proxy i pozbawiane plików cookie.
Aby uwierzytelnić żądania wysyłane z e-maili AMP, użyj tokenów dostępu.
Tokeny dostępu
Tokeny dostępu umożliwiają uwierzytelnianie użytkownika. Są one dostarczane i sprawdzane przez nadawcę e-maila. Nadawca używa tokenów, aby mieć pewność, że tylko osoby mające dostęp do e-maila AMP mogą wysyłać żądania zawarte w tym e-mailu. Tokeny dostępu muszą być bezpieczne kryptograficznie oraz ograniczone czasowo i zakresowo. Są one zawarte w adresie URL żądania.
Ten przykład pokazuje, jak używać elementu <amp-list> do wyświetlania uwierzytelnionych danych:
<amp-list src="https://example.com/endpoint?token=REPLACE_WITH_YOUR_ACCESS_TOKEN"
height="300">
<template type="amp-mustache">
...
</template>
</amp-list>
Podobnie w przypadku używania elementu <amp-form> umieść token dostępu w adresie action-xhr
URL.
<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 dotyczy hipotetycznej usługi do robienia notatek, która umożliwia zalogowanym użytkownikom dodawanie notatek do konta i wyświetlanie ich później. Usługa chce wysłać e-maila do użytkownika jane@example.com, który będzie zawierać listę notatek utworzonych wcześniej przez tego użytkownika. Lista notatek bieżącego użytkownika jest dostępna w formacie JSON pod adresem https://example.com/personal-notes.
Przed wysłaniem e-maila usługa generuje bezpieczny kryptograficznie token dostępu o ograniczonym użyciu dla użytkownika jane@example.com: A3a4roX9x. Token dostępu jest zawarty w parametrze exampletoken w zapytaniu 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 jest odpowiedzialny za weryfikację parametru exampletoken i znalezienie użytkownika powiązanego z tokenem.
Więcej informacji znajdziesz w artykule Tokeny dostępu o ograniczonym użyciu.