Flask ile REST API Yapmak: Adım Adım Rehber

Flask ile REST API Yapmak: Adım Adım Rehber

Flask ile adım adım bir REST API nasıl yapılır, temel bilgiler ve örnek kodlarla açıklanmıştır.

Al_Yapay_Zeka

Flask ile REST API yapmanın zamanı geldi! Python dünyasında Flask, küçük ve hafif yapısıyla oldukça popüler bir web framework'üdür. Ancak, bir web uygulaması geliştirmek isteyenler için sadece HTML sayfalarından fazlasını sunar; Flask, REST API’leri geliştirmek için de mükemmel bir seçimdir. Hadi gelin, adım adım bir Flask REST API nasıl yapılır, bunu birlikte keşfedelim.

Flask Nedir ve REST API Nedir?

Flask, Python ile yazılmış ve minimal bir yapıya sahip olan bir web framework’üdür. Web uygulamaları geliştirmek için basit bir başlangıç sunar. Diğer büyük framework'lere göre daha hafif ve esnektir. Flask ile web sayfaları oluşturabileceğiniz gibi, RESTful API'ler de geliştirebilirsiniz.

REST API (Representational State Transfer API), HTTP üzerinden veri alışverişi yapabilen bir protokoldür. Bu tür API'ler genellikle JSON formatında veri gönderir ve alır. REST API, web uygulamaları ve mobil uygulamalar arasında veri paylaşımını sağlar.

Flask ile REST API Yapmaya Başlamak

Flask ile bir API yapmaya başlamak için öncelikle gerekli bazı araçlara sahip olmanız gerekiyor. İlk olarak Flask’ı kurmanız lazım. Bunu yapmak için terminal veya komut satırını açın ve şu komutu çalıştırın:

```bash
pip install Flask
```

Flask kurulumunu gerçekleştirdikten sonra, basit bir Flask API'si oluşturmak için şu adımları takip edebilirsiniz.

İlk Flask API Kodumuz

İlk API’nizi oluştururken bir "Hello World" uygulaması yazalım. Bu, her şeyin düzgün çalışıp çalışmadığını kontrol etmemizi sağlar.

```python
from flask import Flask

app = Flask(__name__)

@app.route('/api/hello', methods=['GET'])
def hello_world():
return {'message': 'Hello, World!'}

if __name__ == '__main__':
app.run(debug=True)
```

Yukarıdaki kodda Flask’ı import ettik ve bir Flask uygulaması oluşturduk. `@app.route()` dekoratörü ile bir endpoint tanımladık. Bu endpoint, `/api/hello` adresinde bir GET isteği alır ve JSON formatında bir yanıt döndürür.

Uygulamanızı çalıştırmak için terminalde şu komutu çalıştırabilirsiniz:

```bash
python app.py
```

Bu komut Flask uygulamanızı başlatacak ve `http://127.0.0.1:5000/api/hello` adresinden erişilebilen basit bir API sağlayacaktır.

Parametreler ile Çalışmak

Gerçek dünya API'leri genellikle kullanıcıdan parametre alır. Örneğin, kullanıcıya "Merhaba, [ad]" demek isteyebilirsiniz. Flask, parametreleri URL üzerinden almak için çok basit bir yöntem sunar.

```python
@app.route('/api/greet/', methods=['GET'])
def greet_user(name):
return {'message': f'Hello, {name}!'}
```

Bu kodda `` parametresi URL'den alınır ve `greet_user` fonksiyonuna aktarılır. Artık `http://127.0.0.1:5000/api/greet/John` adresini ziyaret ettiğinizde "Hello, John!" mesajını alırsınız.

Veritabanı ile Çalışmak

Gerçek bir uygulamada genellikle veritabanı ile etkileşimde bulunmanız gerekir. Flask ile veritabanı bağlantısı kurmak oldukça kolaydır. İşte Flask uygulamanızda basit bir SQLite veritabanı kullanarak nasıl veri ekleyebileceğinizi gösterecek örnek bir kod.

Öncelikle SQLite’ı kurmanız gerekebilir:

```bash
pip install Flask-SQLAlchemy
```

Veritabanını entegre etmek için şu adımları izleyin:

```python
from flask import Flask, request
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///users.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)

class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True, nullable=False)

def __repr__(self):
return f''

@app.route('/api/users', methods=['POST'])
def add_user():
data = request.get_json()
new_user = User(username=data['username'])
db.session.add(new_user)
db.session.commit()
return {'message': f'User {new_user.username} added successfully!'}

if __name__ == '__main__':
db.create_all() # Veritabanını oluşturur
app.run(debug=True)
```

Bu kodda, `User` adında bir veritabanı modeli tanımladık. `/api/users` endpoint'i, gelen JSON verisindeki `username` bilgisini alıp yeni bir kullanıcı ekler. Bu işlemde veritabanı ile etkileşimde bulunuyoruz.

Flask API'yi Geliştirmek

Bu noktada temel bir REST API’yi oluşturduk. Ancak gerçek dünya uygulamalarında daha karmaşık işlemler yapmanız gerekebilir. Örneğin, hata yönetimi, authentication (kimlik doğrulama) ve daha kapsamlı veri işleme gereksinimleri olacaktır.

Authentication eklemek için JWT (JSON Web Token) kullanabilirsiniz. Flask için JWT kullanımı oldukça yaygındır ve kullanıcı doğrulaması için güvenli bir yöntem sunar.

Flask API’nin Sonuçları

Flask ile REST API yapmanın avantajı, minimal yapısı ve kolay öğrenilebilir olmasıdır. Hızla başlayabilir ve ihtiyaçlarınıza göre geliştirebilirsiniz. Flask, basit projeler için mükemmel olduğu gibi, daha büyük projelerde de esneklik ve hız sağlar.

Flask ile geliştirilen API'ler, modern web ve mobil uygulamaları için temel yapı taşlarıdır. Bu yazı, sizlere Flask ile REST API yapmanın temel adımlarını göstermeyi amaçladı. Şimdi, Flask ile geliştirdiğiniz API'nizi kullanmaya hazırsınız!

İlgili Yazılar

Benzer konularda diğer yazılarımız

ApiUp Nedir?

Merhabalar, bir süredir üzerinde çalıştığım yeni projemi hayata geçirdim. Bu Proje sayesinde, IRC sunucuları en popüler uygulamalarla entegre edilebiliyor. Şu anda Skype, WhatsApp ve Telegram uygulamalarını destekliyoruz. API Sayesinde, IRC Sunucularından...

Web Sitesi Performansını Artırmanın Gizli Yolları: Hız ve SEO İyileştirmeleri için 10 Strateji

Web sitenizin hızını artırmak sadece kullanıcı deneyimini iyileştirmekle kalmaz, aynı zamanda SEO performansınızı da doğrudan etkiler. Peki, web sitenizin hızını artırmanın sırları nedir? İşte, SEO uyumlu, etkili ve çoğu zaman göz ardı edilen bazı optimizasyon...

"Sanal Gerçeklik ile Web Tasarım: 2025'te Web Sitelerini Nasıl Dönüştürür?"

**Günümüzün hızla değişen dijital dünyasında, web tasarımında devrim niteliğinde bir değişim kapıda: **Sanal Gerçeklik (VR)**. Bir zamanlar sadece video oyunları ve eğlence endüstrisiyle sınırlı olan bu teknoloji, şimdi web tasarımına adım atıyor. 2025’te...

Kapsamlı Rehber: WordPress Performans Sorunlarını Çözmek İçin En İyi 10 Adım

WordPress siteniz hızla büyüyor ve kullanıcılarınız her geçen gün artıyor. Ancak, bir sorun var: Sitenizin hızında ciddi düşüşler yaşanıyor ve bu durum, kullanıcı deneyimini olumsuz etkiliyor. Hızlı yüklenen bir site, sadece kullanıcı memnuniyetini değil,...

"Mikroservis Mimarisiyle Web Uygulaması Geliştirmek: Django ve Docker Kullanarak Nasıl Başlanır?"

Mikroservis mimarisi, büyük ve karmaşık yazılım projelerini daha yönetilebilir, ölçeklenebilir ve esnek hale getirmede devrim yarattı. Bu yazıda, Django ve Docker kullanarak mikroservis tabanlı bir web uygulaması geliştirmeye nasıl başlayacağınızı adım...

Web Sitesi Performansınızı Artırmanın 7 Gizli Yolu: SEO Dostu Teknikler

Web siteniz için her şey mükemmel görünüyor. Hızlı, görsel açıdan etkileyici ve kullanıcı dostu. Ama bir şey eksik: Performans. Ne kadar şık bir web sitesi olursa olsun, eğer hızlı yüklenmiyorsa, ziyaretçiler siteyi terk edecektir. Dahası, SEO sıralamanız...