Tukar curl ke Lua
curl2code menukar arahan curl kepada kod Lua menggunakan pustaka http. Penukaran ini berjalan dalam pelayar anda melalui WebAssembly untuk privasi lengkap. Untuk Python, lihat penukar curl ke Python kami. Untuk Ruby, lihat curl ke Ruby. Di bawah adalah contoh Lua praktikal.
Cara menyalin curl daripada pelayar anda
- 1
Buka DevTools
Tekan F12 atau Ctrl+Shift+I untuk membuka alat pembangun pelayar anda.
- 2
Pergi ke tab Network
Klik tab Network dan lakukan tindakan yang mencetuskan permintaan HTTP.
- 3
Salin sebagai cURL
Klik kanan pada permintaan → Copy → Copy as cURL. Kemudian tampalkannya di atas.
Soalan Lazim
Apakah itu Lua http?
lua-http (atau socket.http daripada LuaSocket) ialah cara standard untuk membuat permintaan HTTP dalam Lua. Ia menyediakan kaedah GET, POST, dan permintaan tersuai asas. Untuk lebih banyak ciri, lua-resty-http popular dalam persekitaran OpenResty/Nginx. Pasang dengan luarocks install http. curl2code menjana kod menggunakan modul http.
socket.http vs lua-resty-http vs lua-curl — yang mana patut digunakan?
socket.http (LuaSocket) ialah standard untuk Lua umum. lua-resty-http adalah untuk OpenResty/Nginx dengan I/O tanpa sekatan. lua-curl membungkus libcurl untuk sokongan protokol penuh. Gunakan socket.http untuk skrip mandiri, resty-http untuk pelayan web. Untuk penskripan serupa, lihat curl ke Python atau curl ke Ruby.
Bagaimana cara mengendalikan pengesahan dalam Lua?
Tetapkan pengepala Authorization dalam jadual pengepala: headers = { Authorization = "Bearer token" }. Untuk pengesahan Basic, kodkan dengan pustaka base64: "Basic " .. base64.encode(user .. ":" .. pass). Hantar pengepala dalam jadual pilihan permintaan. curl2code mengendalikan bendera -u dan pengepala.
Bagaimana cara menghantar data borang multipart dalam Lua?
Bina badan multipart secara manual dengan rentetan sempadan, atau gunakan pustaka pembantu seperti multipart-post. Tetapkan pengepala Content-Type dengan sempadan tersebut. http.request LuaSocket menerima fungsi sumber untuk penstriman muat naik besar. curl2code menukar bendera -F kepada sintaks Lua.
Bagaimana cara mengendalikan ralat HTTP dalam Lua?
http.request LuaSocket mengembalikan berbilang nilai: body, code, headers, status = http.request(url). Periksa code untuk status HTTP (200, 404, dll.) atau nil pada kegagalan rangkaian. Gunakan corak assert() atau if not body then Lua untuk pemeriksaan ralat.
Bagaimana cara menghuraikan JSON dalam Lua?
Gunakan modul cjson (pantas, berasaskan C): local data = cjson.decode(json_string). Untuk pengekodan: cjson.encode(table). Dalam OpenResty, cjson sudah dipasang siap. Untuk Lua mandiri, pasang dengan luarocks install lua-cjson. Sebagai alternatif, gunakan dkjson berasaskan Lua tulen.
Bagaimana cara menetapkan had masa tamat dalam Lua?
Dengan LuaSocket: tetapkan http.TIMEOUT = 30 secara global, atau cipta sambungan tersuai dan panggil :settimeout(30). Dalam lua-resty-http, gunakan httpc:set_timeout(30000) (milisaat). Had masa tamat menghalang skrip daripada tergantung selama-lamanya pada pelayan yang tidak responsif.
Bagaimana cara menggunakan proksi dalam Lua?
Dengan LuaSocket, tetapkan medan proxy dalam pilihan permintaan: http.request{ url = target, proxy = "http://proxy:8080" }. Untuk lua-resty-http, sambung ke proksi secara langsung dan gunakan kaedah CONNECT untuk terowong HTTPS. curl2code menukar bendera -x kepada persediaan proksi Lua yang sesuai.
Bagaimana cara menghantar permintaan POST dengan badan JSON dalam Lua?
Tukar perintah curl POST seperti curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL ke Lua menggunakan curl2code. Kod yang dihasilkan menggunakan http.request(url, json_body, headers). curl2code mengesan bendera -d/--data secara automatik dengan kandungan JSON dan menetapkan pengepala Content-Type yang sesuai dalam kod http.
Bagaimana cara menambah kebenaran token Bearer dalam Lua?
Masukkan curl -H "Authorization: Bearer YOUR_TOKEN" URL ke curl2code dan ia akan menghasilkan kod http dengan pengepala auth: headers['Authorization'] = 'Bearer YOUR_TOKEN'. curl2code mengesan token Bearer daripada kedua-dua bendera -H "Authorization: Bearer ..." dan --oauth2-bearer. Untuk Basic auth, gunakan -u user:pass.
Bagaimana cara menetapkan pengepala Content-Type dalam Lua?
curl2code menukar curl -H "Content-Type: application/json" URL kepada kod http dengan pengepala yang betul: headers['Content-Type'] = 'application/json'. Untuk data -d, curl secara lalai menggunakan application/x-www-form-urlencoded; untuk muat naik borang -F, ia menggunakan multipart/form-data. curl2code memetakan setiap satu ke API http yang betul.