,

9) ExpressJS CRUD Operations | Defining Endpoints | NodeJS Backend Project from Beginner to Advanced

Posted by

ExpressJS CRUD İşlemleri

ExpressJS CRUD İşlemleri | Endpoint tanımlama | Başlangıçtan İleriye NodeJS Backend Projesi

ExpressJS, JavaScript tabanlı bir teknoloji olan Node.js’in web uygulamaları oluşturmak için geliştirilen popüler bir framework’üdür. ExpressJS, RESTful API’ler oluşturmak için oldukça kullanışlıdır ve bu makalede CRUD işlemleri (Create, Read, Update, Delete) için endpoint tanımlamayı öğreneceğiz.

ExpressJS kullanarak CRUD işlemleri yapabilmek için öncelikle bir Node.js projesi oluşturmalıyız. Ardından bu projeye ExpressJS’i eklemeli ve gerekli route’ları tanımlamalıyız. Aşağıda basit bir örnek projede CRUD işlemleri için endpoint tanımlama adımlarını bulabilirsiniz:

Node.js projesi oluşturma

Öncelikle terminal veya komut istemcisini açın ve yeni bir klasör oluşturun. Ardından bu klasör içerisinde bir Node.js projesi oluşturmak için aşağıdaki komutu çalıştırın:


mkdir express-crud
cd express-crud
npm init -y

ExpressJS ekleme

ExpressJS’i projemize eklemek için terminalde aşağıdaki komutu çalıştırın:


npm install express

CRUD işlemleri için endpoint tanımlama

ExpressJS ile endpoint tanımlamak oldukça basittir. Öncelikle bir dosya oluşturun ve bu dosyada aşağıdaki kodları yazın:


const express = require('express');
const app = express();

// Create
app.post('/users', (req, res) => {
// Yeni bir kullanıcı oluştur
});

// Read
app.get('/users', (req, res) => {
// Tüm kullanıcıları getir
});

app.get('/users/:id', (req, res) => {
// Belirli bir kullanıcıyı getir
});

// Update
app.put('/users/:id', (req, res) => {
// Belirli bir kullanıcıyı güncelle
});

// Delete
app.delete('/users/:id', (req, res) => {
// Belirli bir kullanıcıyı sil
});

app.listen(3000, () => {
console.log('Server running on port 3000');
});

Bu kodlarla birlikte endpoint’lerimizi tanımlamış oluyoruz. Artık CRUD işlemlerini gerçekleştirebilmek için farklı HTTP metodları ve parametreler kullanarak bu endpoint’lere istek gönderebiliriz.

ExpressJS’i kullanarak CRUD işlemleri ve endpoint tanımlama konusunda daha fazla bilgi edinmek için resmi dokümantasyonu inceleyebilirsiniz. Ayrıca ExpressJS’in sunduğu diğer özellikleri de keşfetmek için projenizi geliştirmeye devam edebilirsiniz.

0 0 votes
Article Rating
3 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
@berkantgunes5195
7 months ago

Youtube da ve birçok platformda Node.js ile ilgili ders videoları izledim.Bu izlediğim gerçekten çok profesyonel ve çok anlaşılır.Fakat video unun ses seviyesi çok düşük bunu iyileştirirseniz çok sevinirim.İyi günler.

@AbdullahDemirkol
7 months ago

37:32 de "Categories.remove is not a function" hatası alıyordum, internette kısa bir araştırma sonucunda Categories.deleteOne şekinde değiştirdim ve sorun düzeldi. bende acaba neden bu hatayı verdi ve farkı var mı acaba hocam?

@AbdullahDemirkol
7 months ago

17:15 tam liste

HTTP_CODES:{

CONTINUE : 100,

SWITCHING_PROTOCOLS : 101,

PROCESSING : 102,

OK : 200,

CREATED : 201,

ACCEPTED : 202,

NON_AUTHORITATIVE_INFORMATION : 203,

NO_CONTENT : 204,

RESET_CONTENT : 205,

PARTIAL_CONTENT : 206,

MULTI_STATUS : 207,

ALREADY_REPORTED : 208,

IM_USED : 226,

MULTIPLE_CHOICES : 300,

MOVED_PERMANENTLY : 301,

FOUND : 302,

SEE_OTHER : 303,

NOT_MODIFIED : 304,

USE_PROXY : 305,

SWITCH_PROXY : 306,

TEMPORARY_REDIRECT : 307,

PERMANENT_REDIRECT : 308,

BAD_REQUEST : 400,

UNAUTHORIZED : 401,

PAYMENT_REQUIRED : 402,

FORBIDDEN : 403,

NOT_FOUND : 404,

METHOD_NOT_ALLOWED : 405,

NOT_ACCEPTABLE : 406,

PROXY_AUTHENTICATION_REQUIRED : 407,

REQUEST_TIMEOUT : 408,

CONFLICT : 409,

GONE : 410,

LENGTH_REQUIRED : 411,

PRECONDITION_FAILED : 412,

PAYLOAD_TOO_LARGE : 413,

URI_TOO_LONG : 414,

UNSUPPORTED_MEDIA_TYPE : 415,

RANGE_NOT_SATISFIABLE : 416,

EXPECTATION_FAILED : 417,

I_AM_A_TEAPOT : 418,

MISDIRECTED_REQUEST : 421,

UNPROCESSABLE_ENTITY : 422,

LOCKED : 423,

FAILED_DEPENDENCY : 424,

UPGRADE_REQUIRED : 426,

PRECONDITION_REQUIRED : 428,

TOO_MANY_REQUESTS : 429,

REQUEST_HEADER_FIELDS_TOO_LARGE : 431,

UNAVAILABLE_FOR_LEGAL_REASONS : 451,

INTERNAL_SERVER_ERROR : 500,

NOT_IMPLEMENTED : 501,

BAD_GATEWAY : 502,

SERVICE_UNAVAILABLE : 503,

GATEWAY_TIMEOUT : 504,

HTTP_VERSION_NOT_SUPPORTED : 505,

VARIANT_ALSO_NEGOTIATES : 506,

INSUFFICIENT_STORAGE : 507,

LOOP_DETECTED : 508,

NOT_EXTENDED : 510,

NETWORK_AUTHENTICATION_REQUIRED : 511