Μετατροπή curl σε Node.js
Μετατρέψτε εντολές curl σε κώδικα Node.js χρησιμοποιώντας το ενσωματωμένο module http. Το curl2code εκτελείται εξ ολοκλήρου στο πρόγραμμα περιήγησής σας μέσω WebAssembly — τα κλειδιά API και τα δεδομένα σας παραμένουν ιδιωτικά. Για JavaScript στην πλευρά του προγράμματος περιήγησης, δείτε τον μετατροπέα curl σε JavaScript. Αν προτιμάτε Python, δοκιμάστε το curl σε Python. Παρακάτω θα βρείτε έτοιμα προς χρήση παραδείγματα.
Πώς να αντιγράψετε το curl από το πρόγραμμα περιήγησής σας
- 1
Ανοίξτε τα DevTools
Πατήστε F12 ή Ctrl+Shift+I για να ανοίξετε τα εργαλεία προγραμματιστή του προγράμματος περιήγησης.
- 2
Μεταβείτε στην καρτέλα Network
Κάντε κλικ στην καρτέλα Network και εκτελέστε την ενέργεια που ενεργοποιεί το αίτημα HTTP.
- 3
Αντιγραφή ως cURL
Κάντε δεξί κλικ στο αίτημα → Copy → Copy as cURL. Στη συνέχεια, επικολλήστε το παραπάνω.
Συχνές Ερωτήσεις
Τι είναι η ενότητα http του Node.js;
Οι ενότητες http και https είναι ενσωματωμένες ενότητες του Node.js για την πραγματοποίηση αιτημάτων HTTP χωρίς εξαρτήσεις. Παρέχουν έλεγχο χαμηλού επιπέδου στις ροές (streams) αιτήματος/απόκρισης. Για εναλλακτικές λύσεις υψηλότερου επιπέδου, το curl2code υποστηρίζει επίσης axios, node-fetch, got, ky και superagent.
http vs axios vs node-fetch vs got — ποιο πρέπει να χρησιμοποιήσω;
Η http δεν έχει εξαρτήσεις αλλά είναι φλύαρη. Η axios προσφέρει ένα καθαρό API με interceptors και αυτόματο JSON parsing. Η node-fetch αντικατοπτρίζει το Fetch API του προγράμματος περιήγησης. Η got είναι πλούσια σε χαρακτηριστικά με επαναλήψεις, σελιδοποίηση και ροές. Επιλέξτε με βάση τις ανάγκες του έργου. Για JavaScript προγράμματος περιήγησης, δείτε τον μετατροπέα curl σε JavaScript.
Πώς γίνεται ο χειρισμός της ταυτοποίησης στο Node.js;
Ορίστε την κεφαλίδα Authorization στο αντικείμενο επιλογών. Για Basic auth, χρησιμοποιήστε το Buffer.from(user + ':' + pass).toString('base64'). Με την axios, χρησιμοποιήστε την ενσωματωμένη επιλογή ρύθμισης auth. Το curl2code μετατρέπει τις σημαίες -u και Bearer token για όλες τις υποστηριζόμενες βιβλιοθήκες Node.js.
Πώς στέλνω δεδομένα φόρμας multipart στο Node.js;
Με την ενσωματωμένη ενότητα http, κατασκευάστε το σώμα multipart χειροκίνητα ή χρησιμοποιήστε το πακέτο form-data. Με την axios, περάστε ένα στιγμιότυπο FormData ως σώμα. Το Node.js 18+ διαθέτει ενσωματωμένη κλάση FormData. Το curl2code χειρίζεται τις σημαίες -F για κάθε παραλλαγή βιβλιοθήκης.
Πώς γίνεται ο χειρισμός σφαλμάτων HTTP στο Node.js;
Με την http, ακούστε για το συμβάν 'error' στο αίτημα και ελέγξτε το response.statusCode. Με την axios, τα σφάλματα ρίπτονται για κωδικούς κατάστασης εκτός 2xx και μπορούν να πιαστούν σε try/catch. Με τη got, χρησιμοποιήστε το ίδιο μοτίβο συν την ενσωματωμένη λογική επανάληψης σε περίπτωση αποτυχίας.
Πώς γίνεται ο χειρισμός αποκρίσεων ροής (streaming) στο Node.js;
Η ενότητα http επιστρέφει μια αναγνώσιμη ροή από προεπιλογή — διοχετεύστε την με response.pipe(fs.createWriteStream('file')). Με τη got, χρησιμοποιήστε το got.stream(url). Με την axios, ορίστε responseType: 'stream'. Το streaming είναι ιδανικό για μεγάλα αρχεία και αποφεύγει τη φόρτωση ολόκληρων των αποκρίσεων στη μνήμη.
Πώς ορίζονται τα χρονικά όρια στα αιτήματα HTTP του Node.js;
Με την http, περάστε το timeout στις επιλογές και ακούστε για το συμβάν 'timeout', στη συνέχεια καλέστε το req.destroy(). Η Axios δέχεται timeout σε χιλιοστά του δευτερολέπτου. Η Got υποστηρίζει τόσο το timeout.request όσο και ενσωματωμένες αυτόματες επαναλήψεις με ρυθμιζόμενη καθυστέρηση.
Πώς χρησιμοποιείται ένας διακομιστής μεσολάβησης (proxy) με το Node.js;
Η ενσωματωμένη ενότητα http απαιτεί χειροκίνητη διοχέτευση proxy. Χρησιμοποιήστε τα πακέτα https-proxy-agent ή http-proxy-agent. Η Axios υποστηρίζει proxies μέσω της ρύθμισης proxy. Η Got χρησιμοποιεί την επιλογή agent με πράκτορες proxy. Το curl2code μετατρέπει κατάλληλα τις σημαίες -x και --proxy.
Πώς να στείλετε ένα POST αίτημα με JSON σώμα στο Node.js;
Μετατρέψτε μια curl POST εντολή όπως curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL σε Node.js χρησιμοποιώντας το curl2code. Ο παραγόμενος κώδικας χρησιμοποιεί axios.post(url, { key: 'value' }). Το curl2code εντοπίζει αυτόματα τα -d/--data flags με JSON περιεχόμενο και ορίζει την κατάλληλη Content-Type κεφαλίδα στον κώδικα axios.
Πώς να προσθέσετε εξουσιοδότηση Bearer token στο Node.js;
Περάστε το curl -H "Authorization: Bearer YOUR_TOKEN" URL στο curl2code και αυτό θα δημιουργήσει κώδικα axios με την κεφαλίδα εξουσιοδότησης: headers: { Authorization: 'Bearer YOUR_TOKEN' }. Το curl2code εντοπίζει τα Bearer tokens τόσο από τα -H "Authorization: Bearer ..." όσο και από τα --oauth2-bearer flags. Για Basic auth, χρησιμοποιήστε το -u user:pass.
Πώς να ορίσετε την κεφαλίδα Content-Type στο Node.js;
Το curl2code μετατρέπει το curl -H "Content-Type: application/json" URL σε κώδικα axios με τη σωστή κεφαλίδα: headers: { 'Content-Type': 'application/json' }. Για δεδομένα -d, το curl χρησιμοποιεί από προεπιλογή το application/x-www-form-urlencoded· για μεταφορτώσεις φορμών -F, χρησιμοποιεί το multipart/form-data. Το curl2code αντιστοιχίζει το καθένα στο σωστό axios API.
Χρήσιμοι σύνδεσμοι
Οδηγοί curl
Κωδικοί σφαλμάτων curl
Αναζητήστε οποιονδήποτε κωδικό εξόδου curl — αιτίες, λύσεις και συμβουλές αποσφαλμάτωσης.
Λήψη αρχείων με curl
Αποθηκεύστε αρχεία με -o, -O, ακολουθήστε ανακατευθύνσεις, συνεχίστε λήψεις και άλλα.
SSL, TLS & Proxy
Ρυθμίστε πιστοποιητικά, εκδόσεις TLS, HTTP/SOCKS proxy και προσαρμοσμένο DNS.