我需要OpenID sreg的命名空间为http://openid.net/extensions/sreg/1.1而不是http://openid.net/sreg/1.0。如何将OpenID设置为使用1.1?我可以在初始化器中设置一些东西吗?或者还有其他什么我没有设置openid认为它不能使用sreg 1.1?
更具体地说,我需要
openid.ns.ext0 = http://openid.net/extensions/sreg/1.1
而不是
openid.ns.ext0 = http://openid.net/sreg/1.0
def open_id
begin
oidreq = openid_consumer.begin 'https://openid.intuit.com/openid/xrds'
rescue OpenID::DiscoveryFailure => why
"Sorry, we couldn't find your identifier '#{openid}'"
else
oidreq.add_extension_arg('sreg','required','email')
oidreq.add_extension_arg('sreg','optional','fullname')
redirect_to oidreq.redirect_url(root_url, root_url + "open_id_complete")
end
end
def self.openid_store
@openid_store ||= OpenID::Store::Memory.new
end
def openid_consumer
@openid_consumer ||= OpenID::Consumer.new(session, self.class.openid_store)
end
end
答案 0 :(得分:0)
最后我找到了答案!我不得不创建一个新的sreg请求然后使用1.1
GetCommandLine()