Teimpléad API Blag NestJS MongoDB – Cúltaca REST Lánghnéitheach do Bhlaganna

Éilíonn cúltaca blaganna inscálaithe ailtireacht dea-struchtúrtha, córas fíordheimhnithe, agus APIanna atá doiciméadaithe i gceart. Is teimpléad cúltaca réidh le haghaidh táirgeachta é API Blaganna NestJS MongoDB atá deartha chun cabhrú le forbróirí ardáin bhlaganna nua-aimseartha a thógáil go tapa ag baint úsáide as doiciméadú NestJS, MongoDB, JWT authenticationagus Swagger .

Cuireann an tionscadal seo API RESTful iomlán ar fáil lena n-áirítear modúil d' úsáideoirí, poist, catagóirí, clibeanna, tuairimí, fíordheimhniú, agus rialú rochtana bunaithe ar róil .

Stórlann: https://github.com/bfotool/nestjs-mongodb-blog-base

Cad é API Blag NestJS MongoDB

Is teimpléad cúil foinse oscailte é API Blag NestJS MongoDB atá tógtha le NestJS 11 agus MongoDB a sholáthraíonn API REST lánfheidhmiúil do bhlaganna.

Tá sé deartha chun feidhmiú mar bhunús le haghaidh tógála:

  • Ardáin bhlag

  • Córais CMS gan cheann

  • APIanna foilsitheoireachta ábhair

  • Suíomhanna gréasáin doiciméadachta

  • Blagáin phunann forbróirí

Leanann an tionscadal an ailtireacht mhodúlach atá molta ag NestJS, rud a chinntíonn inscálaitheacht agus inchothabháil.

Stórlann: https://github.com/bfotool/nestjs-mongodb-blog-base

Príomhghnéithe

Fíordheimhniú agus Údarú

Cuimsíonn an API córas fíordheimhnithe slán ag baint úsáide as comharthaí JWT.

Áirítear ar na príomhghnéithe fíordheimhnithe:

  • Comharthaí Rochtana agus Athnuachana JWT

  • Rialú Rochtana Bunaithe ar Ról(RBAC)

  • Haiseadh pasfhocal le bcrypt

  • Bealaí API faoi chosaint ag baint úsáide as Gardaí

  • Sásra athnuachana comharthaí

Tacaítear le trí ról úsáideora réamhshocraithe:

  • Riarthóir

  • Údar

  • Léitheoir

Fágann sé seo go bhfuil sé éasca ceadanna a bhainistiú trasna críochphointí API éagsúla.

Modúil Bhlag Iomlána

Tá roinnt modúl lánfheidhmithe sa tionscadal a chlúdaíonn feidhmiúlacht lárnach an bhlag.

Modúl Údaraithe

Láimhseálann fíordheimhniú agus seisiúin úsáideora.

Áirítear leis na críochphointí:

  • POST /auth/register

  • POST /auth/login

  • POST /auth/refresh

  • POST /auth/logout

  • GET /auth/profile

Modúl Úsáideoirí

Bainistíonn cuntais agus próifílí úsáideoirí.

Críochphointí:

  • GET /users

  • GET /users/:id

  • PATCH /users/:id

  • DELETE /users/:id

Éilíonn oibríochtaí scríbhneoireachta ceadanna Riarthóra .

Modúl Postálacha

Bainistíonn an modúl postálacha ábhar an bhlag.

Áirítear leis na gnéithe seo a leanas:

  • Leathanachú

  • Scagadh de réir catagóire, clibe nó údair

  • Sórtáil

  • Cuardach téacs iomlán

  • Poist le feiceáil

Críochphointí:

  • GET /posts

  • GET /posts/featured

  • GET /posts/:slug

  • POST /posts

  • PATCH /posts/:id

  • DELETE /posts/:id

Modúl Catagóirí

Eagraíonn sé poist bhlag i gcatagóirí.

Críochphointí:

  • GET /categories

  • GET /categories/:slug

  • POST /categories

  • PATCH /categories/:id

  • DELETE /categories/:id

Modúl Clibeanna

Ceadaíonn sé clibeáil sholúbtha do phoist bhlag.

Críochphointí:

  • GET /tags

  • GET /tags/:slug

  • POST /tags

  • PATCH /tags/:id

  • DELETE /tags/:id

Modúl Tráchtanna

Tacaíonn sé le snáitheanna tráchta agus freagraí neadaithe.

Críochphointí:

  • GET /comments/post/:postId

  • GET /comments/:id/replies

  • POST /comments

  • PATCH /comments/:id

  • DELETE /comments/:id

Cumais API

Leathanachú

Tacaíonn gach críochphointe liosta le leathanaigh a uimhriú.

Sampla:

GET /posts?page=1&limit=6

Scagadh

Is féidir poist a scagadh de réir catagóire, clibe nó údair.

Sampla:

GET /posts?category=web-development

Cuardach Lán-Téacs

Cuirtear feidhmiúlacht chuardaigh i bhfeidhm ar phoist.

Sampla:

GET /posts?search=nestjs+mongodb

Sórtáil

Is féidir freagraí API a shórtáil de réir réimsí éagsúla.

Sampla:

GET /posts?sortBy=createdAt&sortOrder=desc

Giniúint Uathoibríoch Seilidí

Agus poist á gcruthú, gineann an córas slug atá cairdiúil don URL go huathoibríoch ón teideal ag baint úsáide as slugify .

Sampla:

Building REST APIs with NestJS 
→ building-rest-apis-with-nestjs 

Ríomh Am Léitheoireachta

Ríomhann an API an t-am léitheoireachta measta go huathoibríoch bunaithe ar fhad ábhair na bpost.

Formáid Freagartha API Comhsheasmhach

Leanann gach freagra struchtúr caighdeánach:

{ 
  "success": true, 
  "data": {}, 
  "timestamp": "2026-01-01T10:00:00Z" 
} 

Feabhsaíonn sé seo comhtháthú agus dífhabhtú tosaigh.

Cruach Teicneolaíochta

Tá an cúltaca tógtha ag baint úsáide as stac Node.js nua-aimseartha.

Sraith Teicneolaíocht
Creat NestJS 11
Teanga Clóscríobh 5.7
Bunachar Sonraí MongoDB 8
ODM Mongús 8
Fíordheimhniú Pas.js + JWT
Bailíochtú bailíochtóir-ranga
Doiciméadú API Swagger OpenAPI
Slándáil Pasfhocal bcrypt
Gineadóir Seilidí slugaifigh
Tástáil Magadh

Struchtúr an Tionscadail

Leanann an tionscadal ailtireacht mhodúlach.

src/ 
├── auth/ 
├── users/ 
├── posts/ 
├── categories/ 
├── tags/ 
├── comments/ 
├── common/ 
└── seed/ 

Áirítear leis na comhpháirteanna tábhachtacha:

  • Bailíochtú DTO

  • Scéimeanna Mongúis

  • Scagairí eisceachtaí domhanda

  • Idircheapóirí freagartha

  • Gardaí JWT

  • Maisitheoirí Ról

Coinníonn an struchtúr seo an bonn cóid eagraithe agus inscálaithe.

Conas an Tionscadal a Shuiteáil agus a Rith

Réamhriachtanais

Sula ndéantar é a shuiteáil, déan cinnte go bhfuil an méid seo a leanas agat:

  • Node.js 18.17+

  • MongoDB 6+

  • npm, snáth, nó pnpm

Clónáil an Stór

git clone https://github.com/bfotool/nestjs-mongodb-blog-base 
cd nestjs-mongodb-blog-base 

Suiteáil Spleáchais

npm install

Cumraigh Athróga Comhshaoil

Cóipeáil an comhad timpeallachta samplach:

cp .env.example .env

Nuashonraigh na luachanna seo a leanas:

MONGODB_URI= 
JWT_ACCESS_SECRET= 
JWT_REFRESH_SECRET= 

Síol an Bunachar Sonraí

Líon an bunachar sonraí le sonraí samplacha:

npm run seed

Chun athshocrú agus athshíolrú:

npm run seed:refresh

Tosaigh an Freastalaí Forbartha

npm run start:dev

URL bonn API:

http://localhost:3000/api/v1

Doiciméadú Swagger:

http://localhost:3000/api/docs

Sonraí Síolta Réamhshocraithe

Gineann an script síl sonraí samplacha le haghaidh tástála.

Eintiteas Líon
Úsáideoirí 5
Catagóirí 5
Clibeanna 28
Poist 10
Tráchtanna 6

Dintiúir Logála Isteach Réamhshocraithe

Pasfhocal do gach úsáideoir síolta:

admin123

Cuntais:

Ról Ríomhphost
Riarthóir [email protected]
Údar [email protected]
Údar [email protected]
Údar [email protected]
Léitheoir [email protected]

Doiciméadú API Swagger

Tá doiciméadacht idirghníomhach API ar fáil ag:

http://localhost:3000/api/docs

Soláthraíonn Swagger:

  • Tástáil críochphointe idirghníomhach

  • JWT authenticationtacaíocht

  • Doiciméadú scéime iarratais agus freagartha

Cén Fáth a nÚsáidfí an Stór seo

Is pointe tosaigh cumhachtach é API Blag NestJS MongoDB do fhorbróirí atá ag tógáil cúltaca blaganna nua-aimseartha.

Áirítear leis na buntáistí:

  • Ailtireacht mhodúlach glan NestJS

  • Fíordheimhniú ionsuite agus RBAC

  • Doiciméadú API Swagger réidh le húsáid

  • Comhtháthú MongoDB ag baint úsáide as Mongoose

  • Córas síolúcháin bunachar sonraí

  • Struchtúr tionscadail réidh le haghaidh táirgeachta

Stórlann: https://github.com/bfotool/nestjs-mongodb-blog-base