Request():setParameter()
Définir un paramètre pour le corps de la requête (utilisé avec les requêtes POST/PUT/PATCH). Cette méthode vous permet d'ajouter des données qui seront envoyées dans le corps de la requête.
Signature
setParameter(key: string, value: string): Request
Paramètres
Paramètres | Type | Description |
---|---|---|
key | string | Le nom du paramètre |
value | string | La valeur du paramètre |
Renvoie
Request
- Renvoie l'objet Request pour le chaînage de méthodes
Description
La méthode setParameter()
ajoute une paire clé-valeur au corps de la requête. Cette méthode est principalement utilisée avec les requêtes POST, PUT et PATCH où vous devez envoyer des données au serveur. Vous pouvez appeler cette méthode plusieurs fois pour ajouter plusieurs paramètres au corps de la requête.
Exemples
POST de base avec paramètres
-- Envoyer des données de formulaire avec une requête POST
local response = Request("https://api.example.com/users")
:setParameter("name", "John Doe")
:setParameter("email", "john@example.com")
:setParameter("age", "30")
:post()
Requête POST avec type de contenu JSON
-- Envoyer des données JSON avec une requête POST
local response = Request("https://api.example.com/posts")
:setHeader("Content-Type", "application/json")
:setParameter("title", "Mon Nouveau Message")
:setParameter("body", "Ceci est le contenu de mon message")
:setParameter("userId", "1")
:post()
Requête PUT avec paramètres
-- Mettre à jour une ressource avec une requête PUT
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()
Requête PATCH avec mises à jour partielles
-- Mettre à jour partiellement une ressource avec 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()
Soumission de formulaire
-- Soumettre un formulaire de connexion
local response = Request("https://example.com/login")
:setHeader("Content-Type", "application/x-www-form-urlencoded")
:setParameter("username", "monnomutilisateur")
:setParameter("password", "monmotdepasse")
:setParameter("remember", "true")
:post()
Recherche avec POST
-- Envoyer des paramètres de recherche via POST
local response = Request("https://api.example.com/search")
:setParameter("query", "programmation lua")
:setParameter("limit", "10")
:setParameter("sort", "relevance")
:setParameter("filters", "books,tutorials")
:post()
local results = response:getData()
local status = response:getResponseCode()
if status == 200 then
print("Résultats de recherche : " .. results)
else
print("La recherche a échoué avec le statut : " .. status)
end
Structure de données complexe
-- Créer un objet complexe avec plusieurs paramètres imbriqués
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()
Types de paramètres
Lors de l'utilisation de setParameter()
, toutes les valeurs sont traitées comme des chaînes de caractères. Voici des cas d'utilisation courants :
Type de paramètre | Exemple | Notes |
---|---|---|
Texte | setParameter("name", "John Doe") | Chaînes de texte régulières |
Nombres | setParameter("age", "30") | Les nombres doivent être passés comme des chaînes |
Dates | setParameter("date", "2023-12-01") | Utilisez le format ISO pour les dates |
Booléens | setParameter("active", "true") | Passez "true" ou "false" comme des chaînes |
JSON | setParameter("data", '{"key":"value"}') | Les chaînes JSON peuvent être passées comme paramètres |
Notes
- Cette méthode est principalement utilisée avec les requêtes POST, PUT et PATCH
- Toutes les valeurs de paramètres sont traitées comme des chaînes de caractères
- La méthode renvoie l'objet Request, permettant le chaînage de méthodes
- Les paramètres sont généralement formatés selon l'en-tête Content-Type
- Pour les requêtes GET, les paramètres doivent être inclus dans la chaîne de requête de l'URL à la place
- Le format réel du corps de la requête dépend de l'en-tête Content-Type défini avec
setHeader()
- Plusieurs appels à
setParameter()
avec la même clé remplaceront les valeurs précédentes