Jak wysłać żądanie pocztowe za pomocą XMLHTTPREQUEST W JavaScript

Jak wysłać żądanie pocztowe za pomocą XMLHTTPREQUEST W JavaScript
Xmlhttprequest to interfejs API w postaci obiektów używanych do wysyłania lub odbierania danych z serwerów. Metoda send () XMLHTTPREQUEST składa żądanie serwera. Żądanie jest domyślnie asynchroniczne, ale może być również synchroniczne. Jeśli żądanie jest synchroniczne, metoda powraca tylko wtedy, gdy odpowiedź nadejdzie, w przeciwnym razie odpowiedź jest dostarczana za pomocą zdarzeń.

Hmlhttprequest jest częścią AJAX, które są technikami tworzenia stron internetowych, które można użyć do tworzenia asynchronicznych aplikacji internetowych. Na asynchronicznych stronach internetowych możemy wysyłać i odbierać dane z serwerów i aktualizować strony internetowe bez ponownego ładowania stron internetowych.

Żądanie przesłane przez XMLHTTPREQUEST może być albo żądaniem GET lub POST. Możemy dostać się w większości przypadków, ale post jest bezpieczniejszy i powinien być używany, gdy mamy duże ilości danych lub nieznane wejścia użytkownika.

Wysyłanie żądania pocztowego za pomocą xmlhttprequest

Aby wysłać żądanie za pośrednictwem xmlhttprequest, najpierw musimy stworzyć nowy obiekt xmlhttprequest:

const request = new xmlhttprequest ();

Aby wysłać żądanie, musimy użyć metod Open () i Send (). Metoda Open () przyjmuje trzy parametry, które są metodą (GET/Post), URL (lokalizacja pliku na serwerze) i wartość logiczna dla asynchronicznego lub synchronicznego charakteru żądania:

wniosek.Open („Post”, „file_path”, true);

W przypadku synchronicznego żądania:

wniosek.Open („Post”, „file_path”, false);

Z żądaniami asynchronicznymi JavaScript nie czeka na zakończenie żądania i może uruchomić inne skrypty podczas wypełniania żądania. Nie zaleca się używania żądań synchronicznych, ponieważ aplikacja internetowa może zatrzymać się całkowicie, jeśli serwer jest zajęty.

Przed wysłaniem danych metodą send () możemy również użyć setRequestheader () do wysyłania danych jak formularz HTML z nazwą nagłówka i wartością nagłówka:

wniosek.setRequestheader (nagłówek, wartość);

Teraz możemy wysyłać dane z opcjonalnym parametrem, który określa korpus żądania:

wniosek.Wyślij (ciało);

Właściwość OnReadyStechange może być używana w obiekcie xmlhttprequest do wykonania funkcji po otrzymaniu odpowiedzi z serwera:

wniosek.onReadyStateChange =>
Jeśli to.ReadyState == xmlhttprequest.Zrobione && to.status == 200)
// kod do wykonania po zakończeniu żądania

;

Podsumowując, proste asynchroniczne żądanie słupkowe za pomocą XMLHTTPREquest będzie wyglądało tak:

const request = new xmlhttprequest ();
wniosek.Open („Post”, „file_path”, true);
wniosek.setRequestheader (nagłówek, wartość);
wniosek.onReadyStateChange =>
Jeśli to.ReadyState == xmlhttprequest.Zrobione && to.status == 200)
// kod do wykonania po zakończeniu żądania

;
wniosek.Wyślij (ciało);

Wniosek

Ajax's XMLHTTPREquest może być używany do wysyłania i odbierania danych z serwera i aktualizacji strony internetowej zgodnie z nim. Ta technika jest dla programistów czystego złota, ponieważ mogą to wszystko zrobić bez konieczności ponownego załadowania strony.