2013-04-05 59 views
0

我想在谷歌連接/ openid工作silverstripe,但我得到這個錯誤,我不明白它的錯誤。銀條紋 - 谷歌連接

[Notice] Trying to get property of non-object 
GET /GoogleCallback/GoogleConnect 

$ch = curl_init($url); 
curl_setopt_array($ch, array(
      CURLOPT_RETURNTRANSFER => true,   
CURLOPT_HTTPHEADER => array('Accept: application/xrds+xml') 
     )); 

    $xml = curl_exec($ch);  
    $xml = simplexml_load_string($xml); 
    $discovery = $xml->XRD->Service->URI->__toString(); 

    curl_close($ch); 

    $params = array(
     'openid.mode' => 'checkid_setup', 
     'openid.ns' => 'http://specs.openid.net/auth/2.0', 

PS:我使用這個模塊https://github.com/MediaDevils/silverstripe-google-authentication

回答

1

這將有助於告訴我們這行正是引發了錯誤,但我想這將是

$discovery = $xml->XRD->Service->URI->__toString(); 

這是很可能的你沒有得到預期的XML響應(可能有很多原因,所以模塊本身可能不是你問題的根本原因)。例如,您可以轉儲$ xml變量的內容,以便更多地瞭解您返回的內容。類似於

Debug::Dump($xml); 
Debug::Dump(curl_error($ch)); 

之後的curl_exec($ ch);

希望這會有所幫助

+0

hi jfbarrois。感謝您的建議,但我不知道如何處理這個問題。以下是輸出結果,希望您可以幫助 _SSL證書問題,請驗證CA證書是否正常。詳細信息: 錯誤:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:證書驗證失敗_ – Yuusha 2013-04-08 01:11:15

+1

我們正在接近。你在窗戶上嗎?如果是這樣,您的錯誤可能與該頁面上描述的內容有關:http://richardwarrender.com/2007/05/the-secret-to-curl-in-php-on-windows/ – jfbarrois 2013-04-09 08:32:57