我正在爲公共網站實施OpenID支持。雅虎和Verisign openid身份驗證目前正常工作。但是,我似乎無法連接到Google的端點。 下面是代碼:爲什麼Net :: OpenID :: Consumer試圖抓住Google的OpenID發現端點時失敗?
常規的初始化和東西...
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";
...其他的東西
的錯誤是總是相同的: 網址_fetch
_error:錯誤獲取URL:不發現
答:這裏有兩個奧祕。我可以直接使用LWP並從https://www.google.com/accounts/o8/id獲取XRDS文件,但沒有問題。
B.使用相同的代碼,但將端點發現url更改爲「https://me.yahoo.com」完美無缺。
如何讓我的代碼與Google一起工作?我對於爲雅虎和Verisign工作時爲什麼不爲谷歌工作感到困惑。有任何想法嗎?