Search code examples
openidgoogle-openid

problem with google openid login


I create this template (for test) to login with google-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;
    }
};

this works when I try to use Yahoo, but in this case, using Google, I receive a xml document like:

<?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>

instead of expected response! can help me please, where is my wrong?


Solution

  • I change this:

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

    to:

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

    and problem resolved!!!