Converti curl in Lua
curl2code converte i comandi curl in codice Lua utilizzando la libreria http. La conversione avviene nel tuo browser tramite WebAssembly per la massima privacy. Per Python, consulta il nostro convertitore da curl a Python. Per Ruby, vedi da curl a Ruby. Di seguito sono riportati esempi pratici in Lua.
Come copiare curl dal tuo browser
- 1
Apri DevTools
Premi F12 o Ctrl+Shift+I per aprire gli strumenti per sviluppatori del browser.
- 2
Vai alla scheda Network
Fai clic sulla scheda Network ed esegui l'azione che attiva la richiesta HTTP.
- 3
Copia come cURL
Fai clic con il tasto destro sulla richiesta → Copia → Copia come cURL. Quindi incollalo sopra.
Domande Frequenti
Cos'è Lua http?
lua-http (o socket.http di LuaSocket) è il modo standard per effettuare richieste HTTP in Lua. Fornisce metodi GET, POST e metodi di richiesta personalizzati di base. Per ulteriori funzionalità, lua-resty-http è popolare negli ambienti OpenResty/Nginx. Installa con luarocks install http. curl2code genera codice utilizzando il modulo http.
socket.http vs lua-resty-http vs lua-curl — quale usare?
socket.http (LuaSocket) è lo standard per Lua generale. lua-resty-http è per OpenResty/Nginx con I/O non bloccante. lua-curl avvolge libcurl per il supporto completo dei protocolli. Usa socket.http per script standalone, resty-http per server web. Per uno scripting simile, vedi curl a Python o curl a Ruby.
Come gestire l'autenticazione in Lua?
Imposta l'header Authorization nella tabella degli header: headers = { Authorization = "Bearer token" }. Per l'autenticazione Basic, codifica con una libreria base64: "Basic " .. base64.encode(user .. ":" .. pass). Passa gli header nella tabella delle opzioni della richiesta. curl2code gestisce i flag -u e gli header.
Come inviare dati form multipart in Lua?
Costruisci il corpo multipart manualmente con stringhe di boundary, o usa una libreria di supporto come multipart-post. Imposta l'header Content-Type con il boundary. http.request di LuaSocket accetta una funzione sorgente per lo streaming di caricamenti di grandi dimensioni. curl2code converte i flag -F nella sintassi Lua.
Come gestire gli errori HTTP in Lua?
http.request di LuaSocket restituisce più valori: body, code, headers, status = http.request(url). Controlla code per lo stato HTTP (200, 404, ecc.) o nil in caso di errore di rete. Usa il pattern assert() o if not body then di Lua per il controllo degli errori.
Come analizzare il JSON in Lua?
Usa il modulo cjson (veloce, basato su C): local data = cjson.decode(json_string). Per la codifica: cjson.encode(table). In OpenResty, cjson è pre-installato. Per Lua standalone, installa con luarocks install lua-cjson. In alternativa, usa dkjson in puro Lua.
Come impostare i timeout in Lua?
Con LuaSocket: imposta http.TIMEOUT = 30 globalmente, oppure crea una connessione personalizzata e chiama :settimeout(30). In lua-resty-http, usa httpc:set_timeout(30000) (millisecondi). I timeout impediscono agli script di bloccarsi a tempo indeterminato su server che non rispondono.
Come usare un proxy in Lua?
Con LuaSocket, imposta il campo proxy nelle opzioni della richiesta: http.request{ url = target, proxy = "http://proxy:8080" }. Per lua-resty-http, connettiti direttamente al proxy e usa il metodo CONNECT per il tunneling HTTPS. curl2code converte i flag -x nella configurazione proxy Lua appropriata.
Come inviare una richiesta POST con un corpo JSON in Lua?
Converti un comando curl POST come curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL in Lua usando curl2code. Il codice generato utilizza http.request(url, json_body, headers). curl2code rileva automaticamente i flag -d/--data con contenuto JSON e imposta l'intestazione Content-Type appropriata nel codice http.
Come aggiungere l''autorizzazione con Bearer token in Lua?
Passa curl -H "Authorization: Bearer YOUR_TOKEN" URL a curl2code e genererà il codice http con l'intestazione di autenticazione: headers['Authorization'] = 'Bearer YOUR_TOKEN'. curl2code rileva i Bearer token sia dai flag -H "Authorization: Bearer ..." che --oauth2-bearer. Per la Basic auth, usa -u user:pass.
Come impostare l''intestazione Content-Type in Lua?
curl2code converte curl -H "Content-Type: application/json" URL in codice http con l'intestazione corretta: headers['Content-Type'] = 'application/json'. Per i dati -d, curl utilizza come predefinito application/x-www-form-urlencoded; per i caricamenti di moduli -F, utilizza multipart/form-data. curl2code mappa ciascuno alla corretta API di http.