it-swarm.dev

REST (basit İngilizce))

Son zamanlarda kendimi REST ile tanıştırmakla ilgilenmeye başladım. Ben okuma denedim REST wiki girişi , ama hiçbir yardımcı oldu. Birisi basit İngilizce (bu gereksiz gereksiz teknik jargon) açıklayabilir eğer gerçekten takdir ediyorum

  1. REST nedir
  2. Web mimarisi ekosisteminde hangi pozisyonda bulunuyor?
  3. Ne kadar sıkı (veya gevşek) protokol ile birleştirilir.
  4. REST 'a alternatifler nelerdir ve REST onlarla nasıl karşılaştırılır).

Bunu bir veya iki paragrafta cevaplamanın mümkün olmayabileceğini biliyorum, bu durumda ilgili bağlantılar çok takdir edilecektir.

85
Gaurav

REST (basit İngilizce))

Basit ingilizce:

Temsili: birisiyle konuşma veya hareket etme eylemi.
Devlet Transferi: transfer durumu.


Teknik:

  • gerçek bir nesneyi değil, bir formdaki temsilini aktarmayız (örneğin, bir veritabanı tablosunu temsil etmek için bir xml/json/metin).
  • Veriler üzerinde CRUD işlemlerini yürütmek için İnternet üzerinden herkese açık bir API göstermeye yönelik REST'ler. REST, adlandırılmış kaynaklara tek bir tutarlı arayüz üzerinden erişmeye odaklanmıştır.
  • REST bazı medya türleri aracılığıyla temsil eder. Bazı medya türü örnekleri XML, JSON ve RDF'dir.
  • REST, bir teknik özellik veya standart değil kaynak odaklı mimari (ROA) için mimari bir stildir.
  • Mimari tarz, bir kavram, teori (ve nasıl uygulandığı size kalmış) anlamına gelir
  • Her şey benzersiz bir son nokta ile tanımlanır. Her kaynak (veri) için bir uç nokta vardır.
  • Bitiş noktası, kaynak adresli alan adından oluşur.

SABUN vs SABUN

10
Premraj

REST nedir?

Temsili Devlet Transferi. Bir sistemin durumu diğeriyle nasıl iletişim kurabileceğini açıklar. Örnek olarak XML, JSON veya düz metin olarak temsil edilen bir ürünün durumu (adı, açıklaması vb.) Verilebilir. Genelleştirilmiş devlet fikri bir kaynak olarak adlandırılır.

Bir web mimarisi ekosisteminde hangi pozisyonu işgal ediyor?

HTTP, en yaygın taşıyıcı protokolü olduğundan REST genellikle web hizmetleri arayüzüyle ilişkilidir. 7 katmanlı modelde ygulama katmanı adresinde bulunur. Ancak, bir sonraki bölüme bakın.

Protokol ile ne kadar sıkı (veya gevşek) birleştirildi?

REST HTTP değil. HTTP kullanır, çünkü en genel biçiminde REST bir makinenin keyfi bir isim koleksiyonuna karşı bir fiil kavramını eşlemesine yardımcı olmak için vardır. HTTP yararlı bir dizi fiil içerir (GET, PUT , PATCH vb.) HTTP kullanılarak URI olarak ifade edilen rastgele adlara uygulanabilen örn. GET http://example.org/Product (54 ).

REST ve alternatifleri REST onlarla nasıl karşılaştırılır

Bu "Benim yaklaşımım ne kadar RESTful?" Aşağıdaki listeyi kullanın ( Martin Fowler tarafından açıklandığı gibi Richardson Olgunluk Modeli ):

Seviye 0 - POX bataklığı

Her şey için POST kullanın (okur, yazar, siler) Bu SOAP, POX, RPI vb. Sadece kendi protokolünüz için tünel olarak HTTP kullanıyorsunuz. her şeyi istek gövdesinin içeriğine göre yapar.

Seviye 1 - Kaynaklar

Her şey için POST kullanın. Belirli bir şey hakkında bilgi sunmak için tasarlanmış birden fazla uç noktayı hedefleyin. Kaynakları keşfettiniz.

Seviye 2 - HTTP fiilleri

Kaynaklara karşı HTTP fiilleri kullanın. Şimdi onu alıyorsunuz. POST oluşturmaktır, PUT üzerine yazmak, kullanılabilir işlemler için SEÇENEKLER, kaynağı SİL, iyi, silme. Bu fiillerin kullanımı sonucunda farklı HTTP durum kodları daha alakalı olmaya başlar (202 KABUL EDİLDİ Mİ?).

Seviye 3 - Hiper ortam kontrolü ( HATEOLAR )

Bu noktada son sıçramayı gerçekleştirir ve bir akış kontrol mekanizması olarak hiper ortam sunarsınız. A REST istemcinin, genel bir hipermedia anlayışı ötesinde herhangi bir uygulama veya sunucu ile nasıl etkileşimde bulunacağı hakkında önceden bilgiye ihtiyacı yoktur.Bu, HTTP'de Content-Type başlık alanı aracılığıyla iletilebilir. AtomPub ve (daha özlü) HAL , --- HyperAudio ses akışları için iyi çalışır (bkz. SoundCloud et al)

44
Gary Rowe

REST Temsili Durum Transferi'nin bir kısaltması olsa da, biraz sezgisel bir arayüz aracılığıyla çeşitli eylemleri gerçekleştirme fikrini düşünmek daha kolay olabilir.

Örneğin, http://www.mysite.com/FindProduct/125/ gibi bir URL, ürün hakkında 125 kimliğiyle bilgi edinmek isteyen biri olarak yorumlanabilir.

REST genellikle HTTP açısından düşünülürken, kavram Wikipedia referansında belirtildiği gibi diğer protokollere uygulanabilir.

REST yararlı olabilecek diğer örnekler:

11
JB King