如何使用sails-permissionslogin后在sails中redirect
我刚开始使用sails并试图实现身份validation。 我安装了所有的东西,然后用jade创build了一个简单的login表单:
form(action="/auth/local", method="post") div input(name="identifier" type="text") div input(name="password" type="password") div input(type="submit")
这loggingauthentication successful
,并将我转发到页面,返回
{ "createdBy": 1, "owner": 1, "username": "admin", "email": "admin@example.com", "id": 1, "createdAt": "2015-09-25T18:14:20.000Z", "updatedAt": "2015-09-25T18:39:30.000Z", "gravatarUrl": "https://gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61" }
现在我想把新login的用户redirect到任何页面,所以我试图改变表单的动作
/auth/local/login
redirect到/login,但日志
warn: Error: Invalid action
服务器端。
在我的configuration/路线文件,我有这样的路线:
"/login" : { view:"login" }
login后在sails中设置redirect的正确方法是什么?
使用/auth/local/login
,它会尝试调用护照本地策略的login
操作。 但是从源头上你可以看到,本地策略有三个动作:
register
:此方法从指定的电子邮件,用户名和密码创build新用户,并为新创build的用户分配本地Passport。
connect
:此function可用于将本地Passport分配给尚未拥有的用户。 如果用户使用第三方服务进行注册并因此从未设置密码,则会出现这种情况。
disconnect
:断开用户的护照
对于其他操作,它会抛出Invalid action
错误。
成功login后redirect的正确方法是使用next
查询参数 :
/auth/local?next=login