将文章归档于
杂谈
由. Hong Xiaowan on 2008-10-30
今天,TechCrunch郑重的报道了谷歌官方博客郑重发布的一则消息,gmail可以用作OpenID了!但是,目前,我还没有发现支持OpenID登陆的网站支持Gmail作为OpenID登陆。谷歌Gmail作为OpenID,还不符合OpenID的标准协议:
1.作为标准的OpenID,应该是URL的格式:
http://openid.zuosa.com/hongxiaowan;
2.而作为谷歌标准的OpenID,是email的格式;
hongxiaowan@zuosa.com;
其实,这两种格式在逻辑意义上都是一样的,这两者究竟应该哪一个更加方便呢?不用说,谷歌的格式对于用户来说更加方便,OpenID推广的一大困难就在于URL格式的ID。不过,谷歌显然没有必要推出自己的一套标准,要支持email格式的,只要在OpenID上面加一个解释过程就可以了。这个在OpenID 2.0的讨论中已经有所涉及:
1.登陆的时候用email的格式,比如:
hongxiaowan@zuosa.com;
2.将email格式解释为URL格式,比如:
http://openid.zuosa.com/hongxiaowan;
就此,URL和email格式的OpenID就整合到一起了,用email作为OpenID登陆等价于URL格式的OpenID,这是一个最简单的方案:
1.由OpenID供应商提供API,返回OpenID的URL格式:
比如API的URL是http://openid_url_api.zuosa.com,
返回的URL格式是:
http://###openid_domain###/###openid_id###
可以对应于这样的URL:
http://openid.zuosa.com/hongxiaowan
2.根据email格式的OpenID返回URL格式的OpenID:
<?php
echo openid_convert_email_to_url("hongxiaowan@zuosa.com");
function openid_convert_email_to_url($openid_email)
{
$openid_pieces = explode("@", $openid_email);
$openid_url_format=file_get_contents("http://openid_url_api.".$openid_pieces[1]);
$openid_url=str_replace("###openid_domain###",$openid_pieces[1],$openid_url_format);
$openid_url=str_replace("###openid_id###",$openid_pieces[0],$openid_url);
return $openid_url;
}
?>
1.作为标准的OpenID,应该是URL的格式:
http://openid.zuosa.com/hongxiaowan;
2.而作为谷歌标准的OpenID,是email的格式;
hongxiaowan@zuosa.com;
其实,这两种格式在逻辑意义上都是一样的,这两者究竟应该哪一个更加方便呢?不用说,谷歌的格式对于用户来说更加方便,OpenID推广的一大困难就在于URL格式的ID。不过,谷歌显然没有必要推出自己的一套标准,要支持email格式的,只要在OpenID上面加一个解释过程就可以了。这个在OpenID 2.0的讨论中已经有所涉及:
1.登陆的时候用email的格式,比如:
hongxiaowan@zuosa.com;
2.将email格式解释为URL格式,比如:
http://openid.zuosa.com/hongxiaowan;
就此,URL和email格式的OpenID就整合到一起了,用email作为OpenID登陆等价于URL格式的OpenID,这是一个最简单的方案:
1.由OpenID供应商提供API,返回OpenID的URL格式:
比如API的URL是http://openid_url_api.zuosa.com,
返回的URL格式是:
http://###openid_domain###/###openid_id###
可以对应于这样的URL:
http://openid.zuosa.com/hongxiaowan
2.根据email格式的OpenID返回URL格式的OpenID:
<?php
echo openid_convert_email_to_url("hongxiaowan@zuosa.com");
function openid_convert_email_to_url($openid_email)
{
$openid_pieces = explode("@", $openid_email);
$openid_url_format=file_get_contents("http://openid_url_api.".$openid_pieces[1]);
$openid_url=str_replace("###openid_domain###",$openid_pieces[1],$openid_url_format);
$openid_url=str_replace("###openid_id###",$openid_pieces[0],$openid_url);
return $openid_url;
}
?>
Permalink: 谷歌偷换了OpenID的概念?
Mr Wong
Vote for 谷歌偷换了OpenID的概念?:
|
分值情况: 8.77 / 149 评分
|
回应:
EKO
(10/30/08 11:16am)
因为使用邮件地址可以有效的避免用户重名这一问题
回应:
中文网志社区
(10/30/08 1:12pm)
文章已经博评至Cnlog
回应:
Hong Xiaowan
(10/30/08 6:19pm)
@EKO
使用email地址作为OpenID其实很容易,增加几行代码就能够解决问题了。
使用email地址作为OpenID其实很容易,增加几行代码就能够解决问题了。
回应:
丫头
(10/30/08 6:30pm)
支持一下
回应:
生日
(10/30/08 9:46pm)
多谢分享~~
回应:
Hong Xiaowan
(10/31/08 12:33am)
@丫头 @生日
谢谢!
谢谢!
回应:
Mark
(10/31/08 2:46am)
这个。。有啥用?哪些网站有openid的运用?
回应:
自然堂
(10/31/08 5:53pm)
openid到底是啥东西啊?
回应:
Hong Xiaowan
(11/01/08 11:14am)
@mark
有不多的网站支持OpenID登陆,其中包括wordpress,blogger等等。
@自然堂
用OpenID,就可以一个email走天下,前提是天下的网站都支持OpenID。
有不多的网站支持OpenID登陆,其中包括wordpress,blogger等等。
@自然堂
用OpenID,就可以一个email走天下,前提是天下的网站都支持OpenID。
回应:
avenger
(11/03/08 3:39pm)
LooPo也开始google帐号登录了
http://www.loopo.cn/openid
http://www.loopo.cn/openid
回应:
Hong Xiaowan
(11/06/08 12:46am)
我在测试email的openid中。
使用我们的搜索寻找其他有趣的文章
| CW工具栏 | ![]() |
| RSS | |
|
| |
| Yodao |
|
| Netvibes |
|
| Anothr | |
| Follow us on Twitter! |



