如何区分Ajax请求和普通的Http请求?
我在我的应用程序中使用JSF框架。我需要在“阶段侦听器”类中的渲染响应阶段之前运行特定的脚本。
运行此脚本的条件是,如果触发的请求是Ajax请求,则需要运行该脚本;如果触发的请求是Http请求,则不应运行该脚本。
谁能帮我区分收到的请求吗?
回答:
Ajax请求通常具有一个X-Requested-With:
XMLHttpRequest请求标头。在JSF中,您可以通过获得请求标头ExternalContext#getRequestHeaderMap()
。
ExternalContext externalContext = facesContext.getExternalContext();Map<String, String> headers = externalContext.getRequestHeaderMap();
boolean ajax = "XMLHttpRequest".equals(headers.get("X-Requested-With"));
以上是 如何区分Ajax请求和普通的Http请求? 的全部内容, 来源链接: utcz.com/qa/419762.html