DİNLENME POST / PUT isteği biçimi belirleyin

3 Cevap php

Ben REST CodeIgniter Kontrolörü geliştirilmesi ve POST ve çoklu biçimlerde bir URL'ye koymak gerekir ediyorum.

Aklıma başlıca biçimleri olacaktır:

  • XML
  • JSON
  • HTML Form verileri

There will be a response format defined in the URI e.g. /format/xml or /format/csv. I don't want to have to define the request format in the URI as well.

Herkes isteği biçimini bulmaya herhangi bir öneriniz varsa ben bu yüzden benim komut isteği tamamlayabilirsiniz merak ediyordum.

Ben istek başlıklarını "içerik-tipi" bu verileri elde etmek mümkün olabilir düşünüyorum?

  • "Içerik türü: text / xml" = XML
  • "Içerik türü: application / json" = JSON
  • "Içerik türü: text / plain" = HTLM Form verileri * i think!

Bu yöntem sağlam olurdu veya daha iyi orada dışarı yaklaşımlar vardır?

Teşekkürler.

3 Cevap

Içerik türü istediğiniz bilgi almak için doğru yoldur.

Sadece (Ayrıca varsayılan olarak bir içerik türünü varsayabiliriz) istemci yanlış formata çağırır veya içerik türü başlığı geçemiyor bazı görüşleri ve doğru http hata koduyla bir özel durum için emin olun

Ayrıca, gerçekten biçimi / format_of_the_response kullanmak zorunda değilsiniz. Daha iyi bir yolu başlığı içerik-türü kullanın aynı yolda başlığı Accept kullanmak olacaktır

Bu yöntem sürece REST istemci içerik türü kuralı takip edecek bildiğiniz gibi sağlamdır. Eğer müşteri denetlemek, o zaman bu gayet iyi. Alışılmadık bir (veya hiç) içerik-tipi geçirilen zaman çağrı başarısızlık nasıl kabul edilebilir sonra müşteri kontrol yoksa?

Oh ve referans HTML form verileri için 'application / x-www-form-urlencoded' bir içerik türü

Ben bu cevap oldu biliyorum, ama Phil Sturgeon CodeIgniter, biraz size yardımcı olabilir REST Client ve DİNLENME Sunucu Kütüphane yazdı.

http://github.com/philsturgeon/codeigniter-restclient