Конвертировать curl в TypeScript
curl2code преобразует команды curl в код TypeScript с соответствующими аннотациями типов, используя API fetch. Конвертация выполняется в вашем браузере через 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, используя нативный браузерный API fetch с полными аннотациями типов. Сгенерированный код включает типизированные опции запроса, правильную обработку Response и типобезопасный парсинг JSON. TypeScript добавляет безопасность на этапе компиляции к тому же Fetch API, который используется в обычном JavaScript.
TypeScript fetch против JavaScript fetch — в чем разница?
API во время выполнения идентичен — TypeScript добавляет статическую проверку типов. Вы получаете типизированные объекты Headers, RequestInit и Response. Для кастомных структур ответа определите интерфейс и приведите тип с помощью await response.json() as MyType. Для серверного TypeScript проверьте наш конвертер curl в Node.js.
Как обрабатывать аутентификацию в TypeScript?
Так же, как и в Fetch — передайте заголовок Authorization в типизированном объекте HeadersInit. TypeScript гарантирует, что вы не допустите опечаток в именах заголовков при использовании типизированного помощника. curl2code генерирует правильно типизированные заголовки аутентификации из флагов curl -u и -H 'Authorization: ...'.
Как отправить данные формы с помощью TypeScript?
Используйте браузерный API FormData — в TypeScript для него есть встроенные определения типов. Вызывайте formData.append('file', file) с типизированными параметрами. Компилятор отловит несовпадения типов во время сборки. curl2code конвертирует флаги -F в правильно типизированные вызовы FormData.
Как типобезопасно обрабатывать ошибки в TypeScript?
Используйте try/catch с async/await. Типизируйте ошибку в блоке catch как unknown и уточняйте тип с помощью instanceof. Проверяйте response.ok перед парсингом. Определяйте типизированные ответы об ошибках с интерфейсами для форматов ошибок конкретных API. Это дает гарантии на этапе компиляции, что все пути ошибок обработаны.
Как типизировать ответы API в TypeScript?
Определите интерфейс для ожидаемой структуры ответа, затем используйте 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 обеспечит правильные значения перечислений 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 с содержимым 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. Для 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 сопоставляет каждый вариант с подходящим API fetch.