API-Abfrageparameter Parameter sind Schlüssel-Wert-Paare, die an die URL einer API-Anfrage angehängt werden, um zusätzliche Informationen an den Server zu senden. Sie ermöglichen es Clients (z. B. Webbrowsern oder Anwendungen), bestimmte Kriterien anzugeben oder Daten zu übergeben, wenn sie eine Anfrage an den Server stellen.
Abfrageparameter werden am Ende der URL nach einem Fragezeichen (?) hinzugefügt. Jeder Parameter ist ein Schlüssel-Wert-Paar, wobei Schlüssel und Wert durch ein Gleichheitszeichen (=) getrennt sind. Wenn mehrere Abfrageparameter vorhanden sind, werden diese durch ein kaufmännisches Und (&) getrennt.
Wie Abfrageparameter verwendet werden:
Daten filtern: Kunden können Abfrageparameter verwenden, um die gewünschten Daten zu filtern. Beispielsweise könnte ?category=books den Server anweisen, nur Elemente aus der Kategorie „Bücher“ zurückzugeben.
Paginierung: Abfrageparameter werden häufig für die Paginierung in API-Anfragen verwendet, sodass der Client angeben kann, welche Ergebnisseite abgerufen werden soll und wie viele Elemente pro Seite. Beispiel: ?page=2&limit=10.
Sortierung und Reihenfolge: Abfrageparameter können verwendet werden, um anzugeben, wie Daten sortiert werden sollen. Beispielsweise könnte ?sort=price&order=asc den Server anweisen, Artikel in aufsteigender Reihenfolge nach Preis sortiert zurückzugeben.
Übergabe von Suchbegriffen: APIs verwenden häufig Abfrageparameter, um Clients die Suche nach Daten zu ermöglichen. Beispielsweise könnte ?search=laptop verwendet werden, um alle Produkte zu finden, die dem Begriff „Laptop“ entsprechen.
Abfrageparameter sind äußerst flexibel und können je nach API-Design auf verschiedene Arten verwendet werden. Sie ermöglichen eine dynamische Interaktion zwischen Client und Server und erleichtern so die Anforderung benutzerdefinierter Daten.
// pages/api/greet.js export default function handler(req, res) { const { name } = req.query; // Get the 'name' query parameter const greeting = name ? `Hello, ${name}!` : 'Hello, stranger!'; res.status(200).json({ message: greeting }); }
Beispielverwendung:
/api/greet?name=John wird { „message“: „Hallo, John!“ zurückgeben. }
/api/greet gibt { „message“: „Hallo, Fremder!“ zurück. }
// pages/api/user.js export default function handler(req, res) { const { name, age } = req.query; // Get 'name' and 'age' query parameters if (!name || !age) { res.status(400).json({ error: 'Name and age are required' }); return; } res.status(200).json({ message: `User ${name} is ${age} years old.` }); }
Beispielverwendung:
/api/user?name=Jane&age=28 gibt { „message“ zurück: „Benutzerin Jane ist 28 Jahre alt.“ }
/api/user?name=Jane gibt { „error“: „Name und Alter sind erforderlich“ }
// pages/api/score.js export default function handler(req, res) { const { player = 'Anonymous', score = '0' } = req.query; // Default values if missing res.status(200).json({ message: `${player} scored ${score} points!` }); }
Beispielverwendung:
/api/score?player=Alex&score=100 gibt { „message“: „Alex hat 100 Punkte erzielt!“ zurück. }
/api/score gibt { „message“: „Anonymous hat 0 Punkte erzielt!“ zurück. }
// pages/api/tags.js export default function handler(req, res) { const { tags } = req.query; // Get 'tags' query parameter (array) if (!tags) { res.status(400).json({ error: 'Tags are required' }); return; } res.status(200).json({ message: `You have selected these tags: ${tags.join(', ')}` }); }
Beispielverwendung:
/api/tags?tags=javascript&tags=react gibt { „message“: „Sie haben diese Tags ausgewählt: Javascript, reagieren“ }
zurück
/api/tags gibt { „error“: „Tags sind erforderlich“ }
// pages/api/items.js export default function handler(req, res) { const { page = 1, limit = 10 } = req.query; // Default values for page and limit const startIndex = (page - 1) * limit; const endIndex = startIndex Number(limit); // Dummy data for demonstration const items = Array.from({ length: 100 }, (_, i) => `Item ${i 1}`); const paginatedItems = items.slice(startIndex, endIndex); res.status(200).json({ currentPage: page, perPage: limit, items: paginatedItems, }); }
Beispielverwendung:
/api/items?page=2&limit=5 gibt die nächsten 5 Elemente zurück, z. B. { "items": ["Item 6", "Item 7", "Item 8", "Item 9", "Item 10"] }
/api/items (Standardwerte) gibt die ersten 10 Elemente zurück, z. B. { "items": ["Item 1", "Item 2", ..., "Item 10"] }
Diese Beispiele demonstrieren die Flexibilität der Verwendung von Abfrageparametern in Next.js-API-Routen und decken gängige Muster wie einzelne oder mehrere Parameter, optionale Werte, Arrays und Paginierung ab.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3