我正在为公共网站实施 OpenID 支持。Yahoo 和 Verisign openid 身份验证目前工作正常。但是,我似乎无法连接到 Google 的端点。下面是代码:
通常的初始化和东西......
my $csr = Net::OpenID::Consumer->new(
ua => LWP::UserAgent->new(),
consumer_secret => time,
args => CGI->new(),
debug => 1,
);
my $claimed_identity =
$csr->claimed_identity('https://www.google.com/accounts/o8/id');
my $check_url = $claimed_identity->check_url(
return_to => "http://bla.com/openid",
trust_root => "http://bla.com",
delayed_return => 1,
);
print $check_url, "\n";
... 其他的东西
错误总是一样的: url _fetch
_error: Error fetching URL: Not Found
A. 这里有两个谜团。我可以直接使用 LWP 并从https://www.google.com/accounts/o8/id获取 XRDS 文件,没有任何问题。
B. 使用相同的代码,但将端点发现 url 更改为“ https://me.yahoo.com ”工作得很好。
如何让我的代码与 Google 一起使用?我很困惑为什么我不为谷歌工作而为雅虎和威瑞信工作。有任何想法吗?