Heim > Web-Frontend > js-Tutorial > Verschiedene Möglichkeiten, HTTP-Anfragen in JavaScript zu stellen

Verschiedene Möglichkeiten, HTTP-Anfragen in JavaScript zu stellen

Patricia Arquette
Freigeben: 2025-01-17 04:30:12
Original
620 Leute haben es durchsucht

Different Ways to Make HTTP Requests in JavaScript

In diesem Artikel werden verschiedene JavaScript-Methoden zum Senden von HTTP-Anfragen untersucht und dabei auf grundlegendem Wissen aus Dokumentationen und Tutorials aufgebaut. Wir werden verschiedene praktische Ansätze untersuchen.

  1. Abruf-API: Eine moderne, integrierte JavaScript-Methode, die die ältere XMLHttpRequest ersetzt. Es bietet eine sauberere, Promise-basierte Schnittstelle für HTTP-Anfragen. Die Kernfunktion fetch() ruft Ressourcen (wie Serverdaten) ab.

    <code class="language-javascript">fetch (URL, options)</code>
    Nach dem Login kopieren

    Standardmäßig verwendet fetch() GET. Es gibt ein Versprechen zurück, das zu einem Response-Objekt aufgelöst wird.

    Beispiel (angepasst von MDN):

    <code class="language-javascript">async function getData() {
      const url = "https://example.org/products.json";
      try {
        const response = await fetch(url);
        if (!response.ok) {
          throw new Error(`Response status: ${response.status}`);
        }
        const json = await response.json();
        console.log(json);
      } catch (error) {
        console.error(error.message);
      }
    }</code>
    Nach dem Login kopieren

    POST-Anfragen: Für POST-Anfragen geben Sie method, headers und body innerhalb des options-Objekts an.

    Beispiel (angepasst von MDN):

    <code class="language-javascript">const response = await fetch("https://example.org/post", {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
      },
      body: JSON.stringify({ username: "example" }),
    });</code>
    Nach dem Login kopieren

    Wichtige Fetch-API-Funktionen: Die Fetch-API unterstützt von Natur aus CORS (Cross-Origin Resource Sharing) und bietet eine differenzierte Kontrolle über Anmeldeinformationen (Cookies, Authentifizierungsdaten).

  2. Axios: Eine beliebte, benutzerfreundliche Bibliothek eines Drittanbieters, die HTTP-Anfragen im Vergleich zur Fetch-API vereinfacht. Es ist isomorph (funktioniert sowohl in Node.js als auch in Browsern).

    Beispiel-POST (modifiziert für Pfeilfunktion):

    <code class="language-javascript">const axios = require('axios');
    
    axios.get('/user?ID=12345')
      .then(response => console.log(response))
      .catch(error => console.log(error))
      .finally(() => {});</code>
    Nach dem Login kopieren
  3. jQuery.ajax: Teil der jQuery-Bibliothek, oft in Legacy-Projekten zu finden.

    <code class="language-javascript">$.ajax({
      url: 'https://api.example.com/data',
      method: 'GET',
      success: function(data) { console.log(data); },
      error: function(error) { console.error('Error:', error); }
    });</code>
    Nach dem Login kopieren
  4. WebSocket-API: Eine integrierte JavaScript-API zum Aufbau dauerhafter, bidirektionaler Kommunikationskanäle zwischen Client und Server. Ideal für Echtzeitanwendungen (z. B. Chat).

    Beispiel (angepasst von MDN):

    <code class="language-javascript">const socket = new WebSocket("ws://localhost:8080");
    socket.addEventListener("open", (event) => { socket.send("Hello Server!"); });
    socket.addEventListener("message", (event) => { console.log("Message from server ", event.data); });</code>
    Nach dem Login kopieren

Während die Syntax für HTTP-Anfragen je nach Sprache und Framework (PHP, Next.js usw.) variiert, bietet das Verständnis dieser zentralen JavaScript-Methoden eine solide Grundlage für die Anpassung an verschiedene Kontexte.

Das obige ist der detaillierte Inhalt vonVerschiedene Möglichkeiten, HTTP-Anfragen in JavaScript zu stellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage