有没有办法让由 AJAX 请求启动的 MVC 操作可以将响应直接重定向到另一个页面/视图,而无需先向客户端发送 JavaScript “<em>window.location=...”</em>?换句话说,直接在服务器端传输响应,避免到客户端的往返。
这是一个关于直接传输 AJAX 调用的可能性的更普遍的问题,但这里有一个更具体的场景:
- 浏览器向服务器发送 AJAX 请求,控制器的逻辑根据请求数据执行一些操作。
- 对于大多数情况,控制器需要将结果 (JSON) 返回到同一页面。但是,在少数情况下,它需要重定向到另一个页面并返回一个脚本来重定向页面,但这会导致浏览器再次往返。流程是:Page - Server - Page - Server - New Page,问题是这是否可以优化为 Page - Server - New Page 。