JanRain PHP OpenID: Bir sağlayıcı programlı AX destekleyip desteklemediğini kontrol etmek nasıl?

2 Cevap php

Tamam, benim sorun olduğunu ben burada belgelerine bakarak çalıştı http://openidenabled.com/files/php-openid/docs/2.1.3/ ama .. ben onlar destek yöntemleri sağlayıcıdan isteyebilir olduğunu bilmek gerekir bazı sağlayıcılar destek SREG ve bazı desteği sadece AX Ben bir şey görmedim.

2 Cevap

Benzer bir sorunla karşı karşıya.

Aşağıdaki kod size yardımcı olacaktır.

Öyleyse


function getReturnTo() {
    return sprintf("%s://%s:%s%s/finish_auth.php",
                   getScheme(), $_SERVER['SERVER_NAME'],
                   $_SERVER['SERVER_PORT'],
                   dirname($_SERVER['PHP_SELF']));
}

function &getConsumer() {
    /**
     * Create a consumer object using the store object created
     * earlier.
     */
    $store = getStore();
    $consumer =& new Auth_OpenID_Consumer($store);
    return $consumer;
}

$consumer = getConsumer();

$return_to = getReturnTo();
$response = $consumer->complete($return_to);

$sreg_resp = Auth_OpenID_SRegResponse::fromSuccessResponse($response);

$ax = new Auth_OpenID_AX_FetchResponse();
$obj = $ax->fromSuccessResponse($response);

if($sreg)
{
   //sreg is supported, start creating the sreg data array.
}
elseif($obj)
{
   // attribute exchange supported. fetch details here
}

Bu size geliyor hangi veri teşhis etmenize yardımcı olacaktır, SREG veya bağladıkları Satım

Bu soruya sayesinde ve answer at another question, bana mantıklı bir şekilde bu kodu kullanarak bir örnek oluşturduk ettik ve umarım, irade senin için çok. Bu http://gitorious.org/openid-examples/openid-examples yer almaktadır