在Ajax重定向之前执行JavaScript

在Ajax重定向之前执行JavaScript,javascript,ajax,jsf,redirect,cookies,Javascript,Ajax,Jsf,Redirect,Cookies,Ajax请求,重定向到/foo.jsf FacesContext context = FacesContext.getCurrentInstance(); ExternalContext ec = context.getExternalContext(); ec.redirect("/foo.jsf"); context.responseComplete(); ajax响应: <partial-response id="j_id1"><redirect url

Ajax请求,重定向到/foo.jsf

  FacesContext context = FacesContext.getCurrentInstance();
  ExternalContext ec = context.getExternalContext();
  ec.redirect("/foo.jsf");
  context.responseComplete();
ajax响应:

<partial-response id="j_id1"><redirect url="/foo.jsf"></redirect></partial-response>

将cookie添加到响应将不适用于ajax。 我需要浏览器在重定向之前执行脚本来设置cookies,因此需要在
之前添加
,如下所示

<partial-response id="j_id1"><eval>script_set_cookies</eval><redirect url="/foo.jsf"></redirect></partial-response>
script\u set\u cookies

如何在
之前添加
?谢谢。

为什么不直接在响应上设置cookie?对于ajax,在响应上设置cookie是不起作用的。