JSON:API
güçlü ve standartlaştırılmış bir API spesifikasyonudur. Drupal core, Drupal 8 ve sonraki sürümlerde JSON:API spesifikasyonunu uygulayan 'JSON:API' adlı bir modül sağlar. Bu modül, Rest Web Service modülü gibi diğer yöntemlere ek olarak Drupal ekosistemi içinde API'ler oluşturmak için kolay bir yol sunar.
JSON:API, istemci uygulamalarının bir sunucudan nasıl kaynak talep edebileceğini ve alabileceğini tanımlayan bir API spesifikasyonudur. İstekleri ve yanıtları yapılandırmak için bir dizi kuralı takip ederek geliştiricilerin API ile etkileşime girmesini kolaylaştırır. Spesifikasyon tutarlılık sağlar, veri alımını basitleştirir ve API'ler oluşturulurken özel yapılandırmalara olan ihtiyacı azaltır.
JSON:API hakkında daha ayrıntılı bilgi için jsonapi.org adresindeki dökümantasyonu inceleyebilirsiniz.
Şimdi, Drupal'da bir JSON:API oluşturmak için gerekli adımları inceleyelim:
Başlamak için, Drupal web sitenizin JSON:API modülünün etkinleştirildiğinden emin olun. Neyse ki, bu modül Drupal 8 ve sonraki sürümlerde çekirdek bir modül olarak dahil edilmiştir, bu nedenle ekstra uzantıları yüklemenize gerek yoktur.
Modülün etkinleştirilip etkinleştirilmediğini doğrulamak için Drupal yönetim menüsünde "Modüller" bölümüne gidin ve JSON:API modülünün listelendiğini ve etkinleştirildiğini kontrol edin. Eğer etkinleştirilmemişse, buradan etkinleştirebilirsiniz.
Drupal'daki JSON:API modülü varsayılan olarak sınırlı yapılandırma seçenekleri sunar ve temel olarak izin verilen işlemleri düzenlemeye odaklanır.
Bununla birlikte, API yolları, kaynak sayıları veya içerikler için varsayılanlar gibi kaynak özelliklerini değiştirme ihtiyacı duyduğunuzda veya alanları veya kaynakları devre dışı bırakmak için bir arayüz istediğinizde, JSON:API Extras modülünü kullanabilirsiniz. JSON:API Extras, JSON:API modülünün işlevlerini genişleterek API'nizin işlevselliğini özel proje gereksinimlerinize daha iyi uyacak şekilde özelleştirmek için ek özellikler ve esneklik sağlar.
JSON:API modülünü etkinleştirip yapılandırdıktan sonra, yeni oluşturduğunuz API'yi test etme ve onunla bağlantı kurma zamanı gelmiştir
Örnek URL: http://localhost/jsonapi/node/article
Bu URL, JSON:API kullanarak article node kaynak türünden veri getirecek ve sonuçları JSON:API belirtim biçiminde görüntüleyecektir. Belirtilen URL kalıbını takip ederek ve node/article kısmını değiştirerek, diğer kaynak türlerine erişebilirsiniz.
JSON:API ile etkileşim kurmak Postman veya cURL gibi araçlar kullanılarak mümkündür. Varsayılan olarak, bu araçlarla istekte bulunurken, kullanıcı kimlik doğrulamasını otomatik olarak yapmadıkları için kullanıcı Anonymous user olarak kabul edilir. Bu durum, Drupal yapılandırmanızda anonim kullanıcılara verilen izinlere bağlı olarak belirli kaynaklara erişimi sınırlandırabilir.
Ancak, JSON:API aracılığıyla kaynak oluşturmayı, güncellemeyi veya silmeyi düşünüyorsanız yalnızca anonim izinler yeterli olmayacaktır. Bu işlemler için kullanıcı kimlik doğrulaması gereklidir. Drupal, farklı modüller aracılığıyla çeşitli kimlik doğrulama mekanizmaları sunar ve yaygın olarak kullanılan yöntemlerden biri Drupal core'da bulunan HTTP Basic Auth modülü'dür. Ayrıca, Drupal REST & JSON API Authentication gibi daha kapsamlı modüller ek kimlik doğrulama yöntemleri ve özelleştirme seçenekleri sağlayabilir.
Kimliği doğrulanmış bir istek yapmak için adımlar
*Article*: Create new content
iznini verdiğinizden emin olun.Postman'da yetkilendirme yapılandırın. Yeni oluşturulan hesabı kullanın
application/vnd.api+json
değeri ile ekleyinGövdeyi güncelleyin:
{ "data": { "type": "node--article", "attributes": { "title": "This page is created trough JSON:API", "body": { "value": "some body text", "format": "plain_text" } } } }
JSON:API, Drupal'da API oluşturmayı kolaylaştıran güçlü ve standartlaştırılmış bir API spesifikasyonudur. Drupal 8 ve sonraki sürümlerde bir core modül olarak sorunsuz entegrasyonu, geliştiricilere standartlaştırılmış bir API arayüzü sağlayarak özel yapılandırma ihtiyacını azaltır. JSON:API modülünü etkinleştirerek, belirli URL kalıpları ve JSON:API spesifikasyon formatını kullanarak Drupal web sitenizin verileriyle zahmetsizce etkileşim kurabilirsiniz.
JSON:API modülünün daha fazla kullanımı ve ek yeteneklerini keşfetmek için Drupal JSON:API Modülü Dokümantasyonunu inceleyebilirsiniz. Bu kapsamlı dokümantasyon, sayfalama, sıralama, dosya yükleme ve diğer ayrıntılar dahil olmak üzere gelişmiş özellikler hakkında değerli bilgiler sunar.
GOSB Teknopark Hi-Tech Bina 3.Kat B3 Gebze - KOCAELİ