我有一个弹簧控制器方法.它旨在以编程方式注册用户(通过产品内其他系统的单一登录流程).它的工作原理是获取用户数据,验证它,创建用户帐户(如果不存在),将共享令牌传送回另一个系统,然后验证用户.正在进行握手过程,但要解决问题的根源.如果用户不在系统中,我想要相同的方法返回一个字符串,如果已经注册,则返回一个ModelAndView.
可能的解决方案(但不能执行它们):
>将使用HttpURLConnection输入流读取返回的字符串(在第一次用户的情况下).因此,如果有一种方法将数据放入ModelAndView对象,然后使用输入流读取它,那么我就设置了.
>我可以通过将返回类型设置为@ResponseBody String来返回字符串并使用输入流读取它,但是,当它是现有用户时,我无法返回视图.
理想情况下,我会返回一个模型和视图,但另一个系统不是spring,因此它不会理解它.
总而言之,一种做两件事的方法,如果用户是第一次用户,它将字符串返回给具有加密令牌的另一个系统,另一个系统将在iframe中使用该字符串来验证用户.
需要在一个案例中返回一个字符串,以便在另一个系统中使用输入流读取器读取,并且在现有用户的情况下,需要返回一个视图以使用spring本身读取.
如果有任何不清楚的地方,请告诉我.
编辑:有没有办法返回一个http响应(类似于http servlet响应),它足够通用,可以在spring内外工作.这也将解决我的问题.