在java脚本中设置和获取请求头

在java脚本中设置和获取请求头,java,javascript,request-headers,Java,Javascript,Request Headers,我有一个java应用程序,它使用Http头(HttpServletRequest.getHeader('html-wg-useruid')对用户进行身份验证,如何从javascript设置此头?您可以使用XMLHttpRequest中的setRequestHeader方法 var httprequest = new XMLHttpRequest(); httprequest.setRequestHeader('Accept', 'application/json'); httprequest.s

我有一个java应用程序,它使用Http头(HttpServletRequest.getHeader('html-wg-useruid')对用户进行身份验证,如何从javascript设置此头?

您可以使用
XMLHttpRequest
中的setRequestHeader方法

var httprequest = new XMLHttpRequest();
httprequest.setRequestHeader('Accept', 'application/json');
httprequest.setRequestHeader('Content-Type', 'application/json');
httprequest.setRequestHeader('Accept-Language', 'en-us');
要在需要时从响应中检索特定标头,请使用getResponseHeader方法。要获取所有这些,请使用getAllResponseHeaders


可以在中找到可用方法的完整列表。如果您感兴趣,请看一看。

js为什么要设置header?@Pilot,如果您直接从JavaScript执行请求,您可能需要配置HTTP请求以使目标(例如RESTful端点)正确接收。否则,您的请求将无法获取正确/预期的结果。100%这就是我想要的。。。如何配置目标正确接收的HTTP请求。据我所知,目标中的头变量名是“html wg useruid”。Thx alot@user2068662请参考我下面的回答,因为它可能会解决您的问题。:)假设我设置了变量:httprequest.setRequestHeader('html-wg-useruid','gptadmin2');现在如何提交此更改并检查目标应用程序是否读取此变量更改将自动反映在
httprequest
对象中。要提交它,请在请求中调用
send()
方法。要检查目标应用程序是否读取了变量,需要接收预期结果。如果您有权访问该应用程序,则可以在服务器端调试该应用程序。
var contentType = httprequest.getResponseHeader('Content-Type');
var responseHeaders = httprequest.getAllResponseHeaders();