Request():setParameter()
Setzt einen Parameter für den Anfragekörper (verwendet mit POST-/PUT-/PATCH-Anfragen). Diese Methode ermöglicht es Ihnen, Daten hinzuzufügen, die im Anfragekörper gesendet werden.
Signatur
setParameter(key: string, value: string): Request
Parameter
| Parameters | Type | Description |
|---|---|---|
| key | string | Der Parametername |
| value | string | Der Parameterwert |
Rückgabe
Request - Gibt das Request-Objekt für Methodenverkettung zurück
Beschreibung
Die Methode setParameter() fügt dem Anfragekörper ein Schlüssel-Wert-Paar hinzu. Diese Methode wird hauptsächlich bei POST-, PUT- und PATCH-Anfragen verwendet, bei denen Sie Daten an den Server senden müssen. Sie können diese Methode mehrfach aufrufen, um mehrere Parameter zum Anfragekörper hinzuzufügen.
Beispiele
Einfaches POST mit Parametern
-- Send form data with POST request
local response = Request("https://api.example.com/users")
:setParameter("name", "John Doe")
:setParameter("email", "john@example.com")
:setParameter("age", "30")
:post()
POST-Anfrage mit JSON-Inhaltstyp
-- Send JSON data with POST request
local response = Request("https://api.example.com/posts")
:setHeader("Content-Type", "application/json")
:setParameter("title", "My New Post")
:setParameter("body", "This is the content of my post")
:setParameter("userId", "1")
:post()
PUT-Anfrage mit Parametern
-- Update a resource with PUT request
local response = Request("https://api.example.com/users/123")
:setHeader("Content-Type", "application/json")
:setParameter("name", "Jane Smith")
:setParameter("email", "jane@example.com")
:setParameter("status", "active")
:put()
PATCH-Anfrage mit Teilaktualisierungen
-- Partially update a resource with PATCH
local response = Request("https://api.example.com/users/456")
:setHeader("Content-Type", "application/json")
:setParameter("email", "newemail@example.com")
:setParameter("lastUpdated", "2023-12-01")
:patch()
Formularübermittlung
-- Submit a login form
local response = Request("https://example.com/login")
:setHeader("Content-Type", "application/x-www-form-urlencoded")
:setParameter("username", "myusername")
:setParameter("password", "mypassword")
:setParameter("remember", "true")
:post()
Suchanfrage mit POST
-- Send search parameters via POST
local response = Request("https://api.example.com/search")
:setParameter("query", "lua programming")
:setParameter("limit", "10")
:setParameter("sort", "relevance")
:setParameter("filters", "books,tutorials")
:post()
local results = response:getData()
local status = response:getResponseCode()
if status == 200 then
print("Search results: " .. results)
else
print("Search failed with status: " .. status)
end
Komplexe Datenstruktur
-- Create a complex object with multiple nested parameters
local response = Request("https://api.example.com/orders")
:setHeader("Content-Type", "application/json")
:setParameter("customerId", "12345")
:setParameter("productId", "67890")
:setParameter("quantity", "2")
:setParameter("shippingAddress", "123 Main St, City, State")
:setParameter("paymentMethod", "credit_card")
:post()
Parametertypen
Bei der Verwendung von setParameter() werden alle Werte als Zeichenketten behandelt. Hier sind gängige Anwendungsfälle:
| Parameter Type | Example | Notes |
|---|---|---|
| Text | setParameter("name", "John Doe") | Reguläre Textzeichenketten |
| Zahlen | setParameter("age", "30") | Zahlen sollten als Zeichenketten übergeben werden |
| Datumswerte | setParameter("date", "2023-12-01") | ISO-Format für Datumsangaben verwenden |
| Boolesche Werte | setParameter("active", "true") | "true" oder "false" als Zeichenketten übergeben |
| JSON | setParameter("data", '{"key":"value"}') | JSON-Zeichenketten können als Parameter übergeben werden |
Hinweise
- Diese Methode wird hauptsächlich bei POST-, PUT- und PATCH-Anfragen verwendet
- Alle Parameterwerte werden als Zeichenketten behandelt
- Die Methode gibt das Request-Objekt zurück und ermöglicht somit Methodenverkettung
- Parameter werden üblicherweise gemäß dem Content-Type-Header formatiert
- Bei GET-Anfragen sollten Parameter stattdessen in die URL-Abfragezeichenkette aufgenommen werden
- Das tatsächliche Format des Anfragekörpers hängt vom Content-Type-Header ab, der mit
setHeader()gesetzt wurde - Mehrfache Aufrufe von
setParameter()mit demselben Schlüssel überschreiben vorherige Werte