Yahoo! OpenID does not include Exchange attribute information (using python-openid)

I am using python-openid to successfully connect my python based site with OpenID. It works great with Google and works with Yahoo! but with Yahoo! Exchange attribute doesn't seem to work. I only ever get an email address. name, surname and country are always empty. I know Yahoo! (at this email address) has a first and last name.

I use these options among common OpenIDs:

    'openid.ns.ax':'http://openid.net/srv/ax/1.0',
    'openid.ax.mode':'fetch_request',
    'openid.ax.required':'firstname,lastname,email,country',
    'openid.ax.type.firstname':'http://axschema.org/namePerson/first',
    'openid.ax.type.lastname':'http://axschema.org/namePerson/last',
    'openid.ax.type.email':'http://axschema.org/contact/email',
    'openid.ax.type.country':'http://axschema.org/contact/country/home',

      

Searching I found this answer , but I am not familiar with the PHP framework and its use of "counts". There is no such thing in python-openid.

+2


a source to share


1 answer


Better late than never, perhaps. I just tested the same thing in Perl using the Net :: OpenID :: Consumer package and had similar problems. I first found that the first and last name are not available from yahoo, instead you have to define another type pointing to the axschema type http://axschema.org/namePerson and you can query their media image as well, but the first and last name never won't work.

The documentation for sharing information about yahoo openid attributes is here (which is awful IMHO, but at the same time a developer should know how to define types and point them to correct schema values): http://developer.yahoo.com/blogs/ydn / posts / 2009/12 / yahoo_openid_now_with_attribute_exchange / .



This is in contrast to google where the values ​​you can ask for are country, email, first name, last name and langauge, documented here: http://code.google.com/apis/accounts/docs/OpenID .html

Given the differences, it might make sense to offer different return URLs for each provider listed. I have not specified attributes for MyOpenID because I have not tested it yet.

+2


a source







All Articles