2011-08-30 97 views
0

我創建這個模板(測試)與谷歌-的OpenID登錄:問題與谷歌的OpenID登錄

var t = "https://www.google.com/accounts/o8/id" 
    + "?openid.ns=" + encodeURIComponent("http://specs.openid.net/auth/2.0") 
    + "&openid.ns.pape=" + encodeURIComponent("http://specs.openid.net/extensions/pape/1.0") 
    + "&openid.ns.max_auth_age=300" 
    + "&openid.claimed_id=" + encodeURIComponent("http://specs.openid.net/auth/2.0/identifier_select") 
    + "&openid.identity=" + encodeURIComponent("http://specs.openid.net/auth/2.0/identifier_select") 
    + "&openid.return_to=http://localhost:1033/oauth" 
    + "&openid.realm=http://localhost:1033" 
    + "&openid.assoc_handle=ABSmpf6DNMw" 
    + "&openid.mode=checkid_setup" 

    + "&openid.ui.ns=" + encodeURIComponent("http://specs.openid.net/extensions/ui/1.0") 
    + "&openid.ui.mode=popup" 
    + "&openid.ui.icon=true" 

    + "&openid.ns.ax=http://openid.net/srv/ax/1.0" 
    + "&openid.ax.mode=fetch_request" 
    + "&openid.ax.type.email=http://axschema.org/contact/email" 
    + "&openid.ax.type.language=http://axschema.org/pref/language" 
    + "&openid.ax.type.namePerson=http://axschema.org/namePerson" 
    + "&openid.ax.type.friendly=http://axschema.org/namePerson/friendly" 
    + "&openid.ax.type.gender=http://example.com/schema/gender" 
    + "&openid.ax.type.timezone=http://axschema.org/pref/timezone" 
    + "&openid.ax.required=email,language,namePerson,friendly,gender,timezone"; 
var openid = { 
    signin: function (provider) { 
     window.open(t, "Google Login", "location=1,status=1,scrollbars=1, width=700,height=500"); 
     return false; 
    } 
}; 

這作品時,我嘗試使用雅虎,但在這種情況下,使用谷歌,我收到了xml文檔如:

<?xml version="1.0" encoding="UTF-8"?> 
<xrds:XRDS xmlns:xrds="xri://$xrds" xmlns="xri://$xrd*($v*2.0)"> 
    <XRD> 
    <Service priority="0"> 
    <Type>http://specs.openid.net/auth/2.0/server</Type> 
    <Type>http://openid.net/srv/ax/1.0</Type> 
    <Type>http://specs.openid.net/extensions/ui/1.0/mode/popup</Type> 
    <Type>http://specs.openid.net/extensions/ui/1.0/icon</Type> 
    <Type>http://specs.openid.net/extensions/pape/1.0</Type> 
    <URI>https://www.google.com/accounts/o8/ud</URI> 
    </Service> 
    </XRD> 
</xrds:XRDS> 

而不是預期的響應!可以幫助我,請問我的錯在哪裏?

回答

1

我改變了:

var t = "https://www.google.com/accounts/o8/id" 

到:

var t = "https://www.google.com/accounts/o8/ud" 

和問題解決!