Встроенная поддержка CORS : Restwave предлагает встроенную обработку CORS (обмен ресурсами по перекрестному происхождению), устраняя необходимость в внешней библиотеке, такой как CORS в Express. Он автоматически обрабатывает необходимые заголовки и опции, упрощая управление перекрестными аоригинами и сохранение времени во время разработки API. Restwave обеспечивает бесшовное управление доступа к перекрестному происхождению для ваших API без хлопот дополнительной конфигурации.
Разработка без усилий API : Restwave упрощает процесс создания RESTFUL API, предоставляя хорошо структурированную структуру, которая выполняет общие задачи, позволяя вам сосредоточиться на создании основной логики приложения.
Высокая производительность : используя мощность TCP -сервера, Restwave обеспечивает исключительную производительность и масштабируемость, что позволяет вашим API для эффективного выполнения большого количества одновременных соединений и запросов.
Гибкая маршрутизация : с гибкой системой маршрутизации Restwave вы можете легко определить свои маршруты API, включая поддержку динамических параметров, параметры запроса, промежуточное программное обеспечение и многое другое. Он обеспечивает чистый и интуитивно понятный интерфейс для определения конечных точек и обработки методов HTTP.
Поддержка промежуточного программного обеспечения : Restwave предлагает поддержку промежуточного программного обеспечения, чтобы помочь вам справиться с аутентификацией, проверкой запроса, обработке ошибок и другими проблемами перекрестного выреза. Легко подключите свои функции промежуточного программного обеспечения, чтобы добавить пользовательскую логику на различных этапах жизненного цикла запроса.
Расширимость : Restwave разработан, чтобы быть расширяемым, что позволяет беспрепятственно интегрировать дополнительные плагины, модули или свои собственные компоненты. Приспособитесь к структуре к вашим конкретным потребностям, используя существующую мощную функциональность.
Следуйте этим шагам, чтобы быстро настроить и начать использовать Restwave для создания ваших Restful API:
Предварительные условия
Перед началом работы убедитесь, что у вас установлено следующее:
Установка
npm install restwave
import RestWave from "restwave" ;
const app = new RestWave ( ) ;
const PORT = 9000 ;
app . get ( ( req , res ) => {
res . send ( "This is my API endpoint." , 200 ) ;
} ) ;
app . listen ( PORT , ( ) => {
cosnole . log ( `Listening to ${ PORT } ....` ) ;
} ) ; Чтобы получить доступ к request body мы продумываем параметры data .
req.dataОбъект RES в Restwave предоставляет несколько методов отправки ответов обратно клиенту. Вот поддерживаемые методы:
res.json (данные)
Description : отправляет ответ JSON.Accepts : объект JavaScript или строка в формате JSON.Example : res . json ( { message : "Success" , data : { name : "John" , age : 30 } } ) ;res.send (данные)
Description : отправляет общий ответ клиенту.Accepts : строка или различные типы данных, включая XML, SVG, HTML, текстовые форматы (например, CSS, SCG, простой текст) и т. Д. Данные должны быть в формате строки.Example : res . send ( "<h1>Welcome to my website!</h1>" ) ;res.sendfile (Путь)
Description : отправляет файл в качестве ответа на клиент.Accepts : Путь к отправке файла. Поддерживаемые типы файлов включают CSS, PNG, JPEG/JPG, HTML, GIF, MP4, JS, JSON, PDF и т. Д.Example : res . sendFile ( "/path/to/myfile.html" ) ;Важно отметить, что методы res.json () и res.send () автоматически устанавливают соответствующий заголовок типа контента на основе отправляемых данных, в то время как res.sendfile () полагается на расширение файла для определения типа контента.
Мы также предоставляем пользовательский механизм обработки ошибок, где вы можете обрабатывать пользовательские ошибки, такие как,
class AppError extends Error {
constructor ( payload , statusCode ) {
const data = JSON . stringify ( payload ) ;
super ( data ) ;
this . statusCode = statusCode ;
this . payload = payload ;
this . status = statusCode >= 500 ? "error" : "fail" ;
}
} const errorController = async ( err , req , res , next ) => {
res . json (
{
status : err . status ,
payload : err . payload ,
} ,
err . statusCode
) ;
} ; app . use ( errorController ) ; Мы приветствуем вклад сообщества разработчиков, чтобы сделать Restwave еще лучше. Чтобы внести свой вклад, пожалуйста, просмотрите наши рекомендации по вкладу здесь. Независимо от того, хотите ли вы сообщить об ошибке, предложить новые функции или отправить запросы на привлечение, ваше участие высоко ценится.
Restwave открыт и выпущен по лицензии MIT. Не стесняйтесь использовать, изменять и распространять его в соответствии с условиями лицензии.
Для любых запросов или отзывов, пожалуйста, обратитесь к нам по адресу [email protected], мы хотели бы услышать от вас!
Начните создавать мощные RESTFUL API с RESTWAVE сегодня и испытать радость эффективного развития бэкэнд с Node.js!