| Termin | Definicja |
|---|---|
| mechanizm wypisu | Mechanizm wypisu to techniczna realizacja rezygnacji, obejmująca odnośnik, stronę potwierdzenia i aktualizację bazy. Elementy mechanizmu wypisu z komunikacjiMechanizm wypisu to zestaw funkcji aplikacji internetowej, który pozwala odbiorcy zrezygnować z dalszego otrzymywania określonego rodzaju wiadomości. Najczęściej obejmuje odnośnik umieszczony w stopce wiadomości, adres strony obsługującej żądanie oraz zapisanie zmiany w systemie wysyłkowym. Sam odnośnik nie jest jeszcze pełnym mechanizmem. Musi prowadzić do operacji, która jednoznacznie identyfikuje subskrypcję i zmienia jej stan w bazie danych. W praktycznej implementacji odnośnik może zawierać jednorazowy token przypisany do konkretnego adresata i listy komunikacyjnej. Token nie powinien ujawniać adresu poczty wprost w adresie URL, ponieważ taki adres może zostać zapisany w historii przeglądarki, logach serwera albo narzędziach analitycznych. Po otwarciu odnośnika aplikacja sprawdza ważność tokenu, odnajduje właściwy rekord subskrypcji i wyświetla stronę potwierdzenia. W zależności od projektu użytkownik może zostać wypisany od razu albo dopiero po naciśnięciu przycisku potwierdzającego. Token, żądanie HTTP i strona potwierdzeniaStrona wypisu działa zwykle jako endpoint aplikacji internetowej, czyli adres obsługiwany przez określoną funkcję po stronie serwera. Odczytuje ona token przekazany w parametrze adresu, a następnie sprawdza, czy token istnieje, nie wygasł i nie został wcześniej wykorzystany. Wynik weryfikacji powinien być jednoznaczny. Nieprawidłowy albo uszkodzony token nie może przypadkowo zmienić ustawień innego rekordu. Wypis wykonywany przez żądanie GET wymaga ostrożnego zaprojektowania. Przeglądarki, roboty indeksujące i systemy ochrony poczty mogą automatycznie otwierać odnośniki, dlatego samo odwiedzenie strony nie zawsze powinno powodować nieodwracalną zmianę. Bezpieczniejszy wariant pokazuje stronę potwierdzenia, a właściwą aktualizację wykonuje po żądaniu POST wysłanym po naciśnięciu przycisku. Formularz powinien zawierać ochronę przed przypadkowym ponownym wysłaniem, na przykład token CSRF, jeśli użytkownik jest obsługiwany w sesji aplikacji. Aktualizacja bazy danych i zatrzymanie wysyłkiPo potwierdzeniu wypisu system musi zaktualizować dane używane przez moduł wysyłający wiadomości. Najczęściej nie usuwa się całego rekordu, lecz zmienia jego stan, na przykład z aktywnego na wypisany. Takie podejście pozwala zachować spójność relacji z kampaniami, historią wysyłek i preferencjami odbiorcy. Nazwa pola zależy od aplikacji, ale jego znaczenie powinno być jednoznaczne, a wartości opisane w modelu danych lub dokumentacji. Kluczowe jest, aby moduł tworzący listę odbiorców sprawdzał aktualny status tuż przed przekazaniem wiadomości do kolejki wysyłkowej. Sama zmiana w bazie nie wystarczy, jeżeli wcześniej utworzono kolejkę zawierającą adres odbiorcy. System powinien więc uwzględniać status zarówno podczas wyboru adresatów, jak i przed faktycznym przekazaniem wiadomości do serwera pocztowego. Przy równoległym przetwarzaniu zadań potrzebna jest transakcja albo inny mechanizm zapewniający, że zmiana statusu nie zostanie nadpisana starszym zapisem. Sprawdzanie działania na komputerzeWeryfikacja mechanizmu wypisu powinna obejmować cały przepływ: wygenerowanie wiadomości testowej, otwarcie odnośnika, wyświetlenie strony, potwierdzenie operacji, zapis zmiany oraz próbę ponownej wysyłki. Należy sprawdzić także token nieprawidłowy, token wygasły, token użyty drugi raz i odnośnik pozbawiony wymaganych parametrów. Każdy z tych przypadków powinien kończyć się kontrolowanym komunikatem, bez ujawniania danych innych odbiorców. Podczas diagnostyki laptopa lub komputera PC można dodatkowo sprawdzić, czy przeglądarka poprawnie otwiera stronę, czy formularz wysyła żądanie do właściwego adresu oraz czy lokalne rozszerzenia, pamięć podręczna albo blokada skryptów nie zmieniają działania interfejsu. Warszawskie Pogotowie Komputerowe wykonuje profesjonalną naprawę laptopów, komputerów PC i ich podzespołów, a w przypadku problemu z takim mechanizmem można przeanalizować działanie przeglądarki, połączenia sieciowego oraz aplikacji używanej na urządzeniu. |