我注意到以下代码将用户重定向到项目内的URL,
@RequestMapping(method = RequestMethod.POST)
public String processForm(HttpServletRequest request, LoginForm loginForm,
BindingResult result, ModelMap model)
{
String redirectUrl = "yahoo.com";
return "redirect:" + redirectUrl;
}
然而,以下内容已按预期正确重定向,但需要http://或https://
@RequestMapping(method = RequestMethod.POST)
public String processForm(HttpServletRequest request, LoginForm loginForm,
BindingResult result, ModelMap model)
{
String redirectUrl = "http://www.yahoo.com";
return "redirect:" + redirectUrl;
}
我希望重定向始终重定向到指
你可以通过两种方式来实现。
第一:
@RequestMapping(value = "/redirect", method = RequestMethod.GET)
public void method(HttpServletResponse httpServletResponse) {
httpServletResponse.setHeader("Location", projectUrl);
httpServletResponse.setStatus(302);
}
第二:
@RequestMapping(value = "/redirect", method = RequestMethod.GET)
public ModelAndView method() {
return new ModelAndView("redirect:" + projectUrl);
}
我是一个使用ASP.NET MVC5的新手。我需要对控制器进行Jquery调用,以返回一个传递单个参数的新视图。我可以看到很多类似MVC3和之前版本的例子,但却很难找到任何处理MVC4或MVC5并起作用的例子。我所要做的就是从输入元素获取一个值,将其传递给控制器ActionResult,然后打开一个新视图。 PageTwo是视图,Home是控制器。 我试过的代码(包括许多其他代码)通常在404:
我遇到的一个案例是,我必须将链接重定向到来自特定控制器的外部url。我试过很多案例,比如 也试过这样的东西 也尝试将返回类型作为模型和视图发送。但什么都不管用。谁能帮我解决这个问题吗。我看到许多人建议使用sendRedirect和setHeader方法,但在我的案例中,这两种方法行不通。所以我也想知道是否有任何配置可以用于使用这些HTTPServeletResponse的方法。
假设我有一个名为的扩展,my_extension一个名为的插件。 然后,我的控制器中有一个名为的函数。 如何通过通常的http GET请求从外部调用此?
对于我们的web应用程序,我需要保存获取和显示的项的顺序,这取决于视图--或者准确地说--生成视图的控制器和操作(当然还有用户id,但这不是这里的重点)。 我认为,与其在每个控制器操作中自己给出一个标识符(以便使用它对DB输出进行视图依赖的排序),不如从控制器和操作方法中自动创建这个标识符更安全、更容易。 如何从控制器的操作方法中获取控制器和操作的名称?还是我需要反思?
问题内容: 我有一个Ajax POST发送到我的控制器之一。例如 查询>索引。 在Index()动作中,我返回JSON的ActionResult。 在进行登录检查时,我会执行一条if语句,并且如果activeUser的会话令牌为null,我会执行 但是,这不能正确重定向,而是以浏览器抱怨的JSON返回结果。 如何正确设置重定向,以便如果IF语句失败,它将转到登录页面,否则它将返回我需要的JSON结