【发布时间】:2013-01-15 01:17:58
【问题描述】:
请帮我解决这个荒谬的问题。 我通过使用 window.open() 函数从我的 js 表单传递一个 URL,该函数将命中一个控制器方法,并且还包括一些路径变量。 也就是说,
myUrl = "controller/"+pathVar1+"/"+pathVar2+"/controllerMethod?AUTH_TOKEN=" + getAuthTokenId() +"&";
window.open(myUrl,true);
getAuthTokenId() 写在我的“global.js”文件中并且在控制器中我将方法写为
@Controller
@RequestMapping("/controller")
public class ControllerName{
@RequestMapping(value = "/{pathVar1}/{pathVar2}/controllerMethod", method = RequestMethod.GET)
public @ResponseBody void ControllerMethodDefinition(HttpServletRequest request, HttpServletResponse response, @PathVariable("pathVar1") String pathVar1,@PathVariable("pathVar2") String pathVar2){
/***/
}
}
现在我的问题是,当第一次 js 执行我从 js 的调用时,它没有击中控制器,但下次每次都击中控制器。
【问题讨论】:
-
尝试使用浏览器插件工具来调查问题,以确定浏览器是否真的在第一次发送请求。我通常使用一个名为 Tampterdata 的 firefox 插件来显示浏览器和服务器之间的请求和响应流量。如果请求要发送到服务器,请查看它要发送到的 url。
标签: javascript spring spring-mvc controller