如何使用 grails 中的 xfire 插件从服务调用控制器操作?

发布于 2024-11-29 01:39:35 字数 200 浏览 1 评论 0原文

我有使用 spring security 插件开发的 grails 应用程序。现在我需要将其设置为 Web 服务,因此安装了 xfire 插件。现在我想要一个服务,该服务具有带有参数用户名和密码的方法,然后需要调用登录控制器身份验证操作(spring security插件生成),现在该怎么做?可以从控制器调用服务,但如何从服务调用控制器操作?

预先致谢, 拉克西米变种

I have grails app developed with spring security plugin.Now i need to make it web service so installed xfire plugin.Now i want to have a service which has a method with parameters username and password then need to call login controller auth action (spring security plugin generated),now how to do that? can call service from controller but how to call controller action from service?

With advance thanks,
Laxmi.p

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

猫性小仙女 2024-12-06 01:39:35

您不应该从任何地方调用控制器操作 - 除了其他控制器操作。
请参阅此问题: Grails 调用控制器方法计划作业

要以编程方式登录用户,您可以执行以下操作:

void login(String username, String password) {
    def authToken = new UsernamePasswordAuthenticationToken(username, password)
    def newauth = authenticationManager.authenticate(authToken)
    SecurityContextHolder.getContext().setAuthentication(newauth)
}

You should not call controller actions from anywhere - except for other controller actions.
See this question: Grails Invoke a controller method from a scheduled job

To programmatically login a user, you can do this:

void login(String username, String password) {
    def authToken = new UsernamePasswordAuthenticationToken(username, password)
    def newauth = authenticationManager.authenticate(authToken)
    SecurityContextHolder.getContext().setAuthentication(newauth)
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文