TL;DR:我该如何与sinatra和监狱长创建注册功能
我正在尝试为Sinatra应用程序制作一个简单的身份验证系统,我发现监狱长可能是最好的选择。我已经找到了很多关于如何使用它的例子。我从sklise的例子开始工作。
我很快就遇到了注册的问题。看看有可能用之类的东西创建一个新用户
post '/auth/signup' do
u = User.new(:username => params[:username], :password => params[:password])
u.save
但后来呢?如何验证/登录此全新用户?我似乎找不到任何关于如何使用sinatra+warden构建注册功能的参考。事实上,我似乎根本找不到任何东西给典狱长。典狱长维基上没有一个例子有注册功能。有人能解决这个问题吗?
感谢
不完全是典狱长爱好者,但这看起来像你想看的地方:
https://github.com/hassox/warden/blob/906edf86c6c31be917a921097031b89361d022e8/lib/warden/strategies/base.rb#L116
从你的例子来看,我认为你会想做这样的事情:
post '/auth/signup' do
u = User.new(:username => params[:username], :password => params[:password])
u.save
env['warden'].success!(u)
...