Giriş: REST API Nedir ve Neden Önemlidir?
REST API (Representational State Transfer Application Programming Interface), çeşitli sistemlerin birbirleriyle iletişim kurmasını sağlayan bir arayüzdür. Web tabanlı uygulamalarda yaygın olarak kullanılan RESTful API’ler, esnek yapıları sayesinde kaynakların (veri öğeleri) farklı istemcilerle paylaşımında önemli bir rol oynar. Günümüzde mobil uygulamalardan web tabanlı sistemlere kadar birçok yerde REST API’lerin kullanılması, geliştiricilerin uygulama işleyişlerini kolaylaştırmaktadır.
REST, HTTP protokolü üzerine inşa edildiği için web standartları ile uyumlu çalışmayı sağlar. Kaynaklara erişim için HTTP istemcileri ile URL’ler kullanılarak istekler gönderilir. Bu durum, geliştiricilerin uygulamalarını daha sürdürülebilir ve ölçeklenebilir hale getirmelerine olanak tanır. REST API’lerin kullanılmasının en büyük avantajı, istemcilerin API ile etkileşim kurarken veri formatını (JSON veya XML) kolayca seçebilmesidir. Böylece, kullanıcı deneyimi ve geliştirici verimliliği artar.
Eğer Python ile REST API yazmaya karar verdiyseniz, doğru yerdesiniz! Bu makalede, adım adım bir REST API geliştirmek için izlemeniz gereken yolları açıklayacağım. Python’un popülaritesinin artmasında etkili olan kütüphaneler, sizin işinizi kolaylaştıracak ve daha az kodla daha fazla iş yapmanızı sağlayacaktır.
Gerekli Kütüphaneler: Flask ve Flask-RESTful
Pek çok Python geliştiricisi, REST API oluşturmak için Flask kütüphanesini tercih etmektedir. Flask, mikro bir web çerçevesi olduğundan, güçlü ve esnek bir yapıya sahip olmasını sağlar. Minimalist yapısı ile hızlı bir şekilde uygulama geliştirmek isteyen yazılımcılar için oldukça uygundur. Flask ile birlikte kullanabileceğiniz bir diğer kütüphane ise Flask-RESTful’dur. Bu kütüphane, API oluşturma sürecini daha da basitleştirir ve sık kullanılan işlevleri kolayca uygulamanıza olanak tanır.
Flask ve Flask-RESTful kütüphanelerini kullanmaya başlamak için öncelikle gerekli paketleri yüklemeliyiz. Bunu, aşağıdaki pip komutu ile gerçekleştirebilirsiniz:
pip install Flask Flask-RESTful
Kurulumun ardından, projenizin temel yapısını oluşturmak için birkaç dosya oluşturmanız yeterli olacaktır. Bu dosyalarda, uygulamanızın ana mantığını, API uç noktalarını ve gerekli işlevleri oluşturacaksınız.
Basit Bir REST API Oluşturma
Artık Flask ve Flask-RESTful kütüphanelerimizi kurduğumuza göre, basit bir REST API uygulaması oluşturmaya başlayabiliriz. Aşağıdaki adımları takip ederek basit bir uygulama geliştireceğiz:
1. İlk olarak, yeni bir Python dosyası oluşturalım. Örneğin, app.py
adında bir dosya yapalım. Bu dosyanın içinde Flask uygulamamızı başlatacağız. Şu kodları yazın:
from flask import Flask
from flask_restful import Resource, Api
app = Flask(__name__)
api = Api(app)
2. Şimdi, bir kaynak oluşturacağız. Örneğin, kullanıcı bilgilerini yöneten basit bir API oluşturacağız. Aşağıdaki kod, temel bir kullanıcı kaynağı ekleyecektir:
users = {}
class User(Resource):
def get(self, user_id):
return users.get(user_id, "User not found")
def post(self, user_id, name):
users[user_id] = name
return {user_id: name}, 201
api.add_resource(User, '/user/')
Burası, kullanıcılara ait bilgileri alıp eklemek üzere iki HTTP yöntemi kullanarak bir kaynak oluşturduğumuz yerdir. GET isteği, belirli bir kullanıcıyı geri dönerken, POST isteği, yeni bir kullanıcı ekler. API’yi çalıştırabilmek için, aşağıdaki satırı eklemeyi unutmayın:
if __name__ == '__main__':
app.run(debug=True)
3. Şimdi, terminalde python app.py
komutunu çalıştırarak uygulamanızı çalıştırın. Varsayılan olarak, API’niz http://localhost:5000/user/
adresinde çalışacaktır.
API İstekleri ve Yanıtları
API’nizi oluşturduktan sonra, onu test etmek için birkaç istek göndermemiz gerekiyor. Bunu yapmak için Postman gibi API istemcilerini veya CURL komutlarını kullanabilirsiniz. İlk olarak, bir kullanıcıyı eklemek için POST isteği göndereceğiz:
POST http://localhost:5000/user/1?name=Ege
Bu istek, kullanıcı kimliği 1 ve adı