Μετατροπή curl σε TypeScript
Το curl2code μετατρέπει εντολές curl σε κώδικα TypeScript με κατάλληλες δηλώσεις τύπων χρησιμοποιώντας το fetch API. Η μετατροπή εκτελείται στο πρόγραμμα περιήγησής σας μέσω WebAssembly — τα δεδομένα σας δεν φεύγουν ποτέ από τη συσκευή σας. Για απλή JavaScript, δείτε τον μετατροπέα curl σε JavaScript. Για κώδικα στην πλευρά του διακομιστή, δείτε το curl σε Node.js. Παρακάτω υπάρχουν παραδείγματα με τύπους για κοινά σενάρια.
Πώς να αντιγράψετε το curl από το πρόγραμμα περιήγησής σας
- 1
Ανοίξτε τα DevTools
Πατήστε F12 ή Ctrl+Shift+I για να ανοίξετε τα εργαλεία προγραμματιστή του προγράμματος περιήγησης.
- 2
Μεταβείτε στην καρτέλα Network
Κάντε κλικ στην καρτέλα Network και εκτελέστε την ενέργεια που ενεργοποιεί το αίτημα HTTP.
- 3
Αντιγραφή ως cURL
Κάντε δεξί κλικ στο αίτημα → Copy → Copy as cURL. Στη συνέχεια, επικολλήστε το παραπάνω.
Συχνές Ερωτήσεις
Τι παράγει το curl2code για TypeScript;
Το curl2code παράγει κώδικα TypeScript χρησιμοποιώντας το εγγενές fetch API του προγράμματος περιήγησης με πλήρεις σχολιασμούς τύπων. Ο παραγόμενος κώδικας περιλαμβάνει πληκτρολογημένες επιλογές αιτήματος, σωστό χειρισμό Response και ασφαλή ως προς τους τύπους ανάλυση JSON. Η TypeScript προσθέτει ασφάλεια κατά το χρόνο μεταγλώττισης στο ίδιο Fetch API που χρησιμοποιείται στην απλή JavaScript.
TypeScript fetch vs JavaScript fetch — ποια είναι η διαφορά;
Το API κατά το χρόνο εκτέλεσης είναι πανομοιότυπο — η TypeScript προσθέτει στατικό έλεγχο τύπων. Έχετε πληκτρολογημένα αντικείμενα Headers, RequestInit και Response. Για προσαρμοσμένα σχήματα απόκρισης, ορίστε ένα interface και κάντε cast με await response.json() as MyType. Για TypeScript στην πλευρά του διακομιστή, δείτε τον μετατροπέα curl σε Node.js.
Πώς γίνεται ο χειρισμός της ταυτοποίησης στην TypeScript;
Το ίδιο με το Fetch — περάστε μια κεφαλίδα Authorization στο πληκτρολογημένο αντικείμενο HeadersInit. Η TypeScript διασφαλίζει ότι δεν θα γράψετε λάθος τα ονόματα των κεφαλίδων εάν χρησιμοποιείτε έναν πληκτρολογημένο βοηθό κεφαλίδων. Το curl2code παράγει σωστά πληκτρολογημένες κεφαλίδες ταυτοποίησης από τις σημαίες -u και -H 'Authorization: ...' του curl.
Πώς στέλνω δεδομένα φόρμας με TypeScript;
Χρησιμοποιήστε το FormData API του προγράμματος περιήγησης — η TypeScript διαθέτει ενσωματωμένους ορισμούς τύπων για αυτό. Καλέστε το formData.append('file', file) με πληκτρολογημένες παραμέτρους. Ο μεταγλωττιστής εντοπίζει τυχόν αναντιστοιχίες τύπων κατά το χρόνο κατασκευής. Το curl2code μετατρέπει τις σημαίες -F σε σωστά πληκτρολογημένες κλήσεις FormData.
Πώς γίνεται ο χειρισμός σφαλμάτων με ασφάλεια τύπων στην TypeScript;
Χρησιμοποιήστε try/catch με async/await. Ορίστε τον τύπο του σφάλματος στο catch ως unknown και περιορίστε τον με instanceof. Ελέγξτε το response.ok πριν την ανάλυση. Ορίστε πληκτρολογημένες αποκρίσεις σφαλμάτων με interfaces για μορφές σφαλμάτων ειδικά για το API. Αυτό σας παρέχει εγγυήσεις κατά το χρόνο μεταγλώττισης ότι όλοι οι δρόμοι σφαλμάτων αντιμετωπίζονται.
Πώς ορίζονται οι τύποι των αποκρίσεων API στην TypeScript;
Ορίστε ένα interface για το αναμενόμενο σχήμα απόκρισης και στη συνέχεια χρησιμοποιήστε το const data: MyAPI = await response.json(). Για επικύρωση κατά το χρόνο εκτέλεσης, συνδυάστε το με zod ή io-ts. Αυτό το μοτίβο διασφαλίζει την ασφάλεια τύπων σε όλο τον κώδικά σας. Για παρόμοια εμπειρία σε άλλες γλώσσες, δείτε το curl σε Go ή το curl σε Rust.
Πώς ορίζονται τα χρονικά όρια για το fetch στην TypeScript;
Χρησιμοποιήστε το AbortController — η TypeScript περιλαμβάνει πλήρεις ορισμούς τύπων για το Abort API. Δημιουργήστε const controller = new AbortController(), περάστε το signal στο fetch και διακόψτε με το setTimeout. Η συντόμευση AbortSignal.timeout(ms) είναι πληκτρολογημένη στους σύγχρονους στόχους βιβλιοθήκης της TypeScript.
Πώς αντιμετωπίζεται το CORS με την TypeScript;
Ο χειρισμός του CORS είναι πανομοιότυπος με τη JavaScript — είναι ένα χαρακτηριστικό ασφαλείας του προγράμματος περιήγησης, όχι της TypeScript. Ορίστε mode: 'cors' και credentials: 'include' όπως απαιτείται, με την TypeScript να διασφαλίζει τις σωστές τιμές enum για τα RequestMode και RequestCredentials. Για αιτήματα από την πλευρά του διακομιστή όπου το CORS δεν ισχύει, δείτε το curl σε Node.js.
Πώς να στείλετε ένα POST αίτημα με JSON σώμα στην TypeScript;
Μετατρέψτε μια curl POST εντολή όπως curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL σε TypeScript χρησιμοποιώντας το curl2code. Ο παραγόμενος κώδικας χρησιμοποιεί const response: Response = await fetch(url, { method: 'POST', body: JSON.stringify(data) }). Το curl2code εντοπίζει αυτόματα τα -d/--data flags με JSON περιεχόμενο και ορίζει την κατάλληλη Content-Type κεφαλίδα στον κώδικα fetch.
Πώς να προσθέσετε εξουσιοδότηση Bearer token στην TypeScript;
Περάστε το curl -H "Authorization: Bearer YOUR_TOKEN" URL στο curl2code και αυτό θα δημιουργήσει κώδικα fetch με την κεφαλίδα εξουσιοδότησης: headers: { Authorization: `Bearer ${token}` }. Το curl2code εντοπίζει τα Bearer tokens τόσο από τα -H "Authorization: Bearer ..." όσο και από τα --oauth2-bearer flags. Για Basic auth, χρησιμοποιήστε το -u user:pass.
Πώς να ορίσετε την κεφαλίδα Content-Type στην TypeScript;
Το curl2code μετατρέπει το curl -H "Content-Type: application/json" URL σε κώδικα fetch με τη σωστή κεφαλίδα: headers: { 'Content-Type': 'application/json' } as HeadersInit. Για δεδομένα -d, το curl χρησιμοποιεί από προεπιλογή το application/x-www-form-urlencoded· για μεταφορτώσεις φορμών -F, χρησιμοποιεί το multipart/form-data. Το curl2code αντιστοιχίζει το καθένα στο σωστό fetch API.
Χρήσιμοι σύνδεσμοι
Οδηγοί curl
Κωδικοί σφαλμάτων curl
Αναζητήστε οποιονδήποτε κωδικό εξόδου curl — αιτίες, λύσεις και συμβουλές αποσφαλμάτωσης.
Λήψη αρχείων με curl
Αποθηκεύστε αρχεία με -o, -O, ακολουθήστε ανακατευθύνσεις, συνεχίστε λήψεις και άλλα.
SSL, TLS & Proxy
Ρυθμίστε πιστοποιητικά, εκδόσεις TLS, HTTP/SOCKS proxy και προσαρμοσμένο DNS.