我想为用户的开放ID使用创建rails路由。网址看起来像
http://mysite.com/identity/:html_encoded_openid
or
http://mysite.com/identity/:html_encoded_openid.xml
这样可以查询站点的开放ID,并查看该标识的信息或接收包含该信息的xml文档。标准Rails的东西。
我正在寻找你在一些方面的专业知识:
标准的rails路由似乎会阻塞openid中的.s,以便:
http://mysite.com/identity/openid
会找到路线,但
http://mysite.com/identity/openid.myopenid.com
不会。
我需要注意哪些安全问题?
我宁愿不使用标准的友好网址方法:
my-friendly-openid-com
or
23-my-friendly-openid-com
如果可能的话。
答案 0 :(得分:1)
你可以用这样的东西处理第二条路线(用真实的东西代替动作名称)。
map.connect 'identity/:id', :controller => "identity",
:action => "foo",
:requirements => {:id => /(\w+\.?)+/}