Açık Kimliği XRDS Keşif

3 Cevap php

Ben sadece (PHP) sitemde / auth Açık Kimliği adlı etkileşim yapma etrafında bir sınıf oynamak, Açık kimliği ile çalışıyorum. Ben (RPX gibi) birkaç diğer Kütüphaneler var biliyorum, ama ben (protokolünü anlamak daha iyi yardım tutmak ve benim için doğru olup olmadığını onun iyi) kendi kullanmak istiyorum.

Ben soru Açık Kimliği keşif dizisine ilişkindir. Temelde ben iddia kimlik (openid.claimed_id) gelen yerel kimliğini (openid.identity) almak için XRDS doc kullanarak bakıyorum noktaya ulaştı.

My question is, do I have to make a cURL request to get the XRDS Location (X-XRDS-location) and then make another cURL request to get the actual XRDS doc??

Ben sadece bir cURL istek yapmak ve Açık Kimliği Sunucusu olsun, ama XRDS Akıllı yöntemi kullanmak için iki yapmak zorunda APTAL isteği ile gibi görünüyor. Sadece herkesten bana biraz bilgi verebilir, doğru görünmüyor.

3 Cevap

Tam olması için, evet, senin RP HTTP GET URL kullanıcı verir, ve sonra bir XRDS belge başvuru için arama ve bulunan başka bir HTTP GET oradan yapmanız gerekir. XRDS farklı bir sunucu üzerinde barındırılan olabilir unutmayın, bu yüzden aynı bağlantı olmayabilir çünkü bağlantı iki istekleri arasında aynı olmasını gerektirecek bir şey kadar kod yok.

Başlangıçtaki HTTP GET isteği HTTP başlığını eklerseniz:

Accept: application/xrds+xml

Sonra sayfa XRDS belge yerine bir XRDS link ayrıştırmak zorunda bir HTML belgesi ile hemen yanıt OLABİLİR. Bu onun Content-Type başlığında uygulama / xrds + xml için HTTP yanıt başlığını kontrol ederek meydana geldiğini tespit etmek mümkün olacak. Ama oluyor güvenemez - RPS genellikle bu ikinci HTTP GET çağrı yapmak zorunda kalmamak için bu bir optimizasyon.

Sana verebileceğim en iyi tavsiye, biraz talep soyut sizin HTTP çalışın, ve sonra sadece iki kez bir HTTP isteği yapmanın tüm süreç boyunca gitmektir.

Kalıcı bağlantıları kullanarak şeyleri hızlandırmak istiyorsanız etrafında kıvırmak örneklerini tutabilir, ama o veya istediğiniz istediğiniz olmayabilir.

Umarım bu yardımcı olur ve iyi şanslar .. OpenID ben WebDAV beri geldim en hacimli ve kıvrık web standartlarından biridir =)

Tersyüz etmek

Ben burada oyuna geciktim biliyorum, ama aynı zamanda the webfinger protocol kontrol gerektiğini düşünüyorum. Bu model "kimliği olarak e-posta" standart alır ve OpenID vb keşfetmek için oradan bir arama yapmanıza olanak sağlar