xhr.setRequestHeader('key', 'value') 設置的自定義 Header,瀏覽器發送時會攜帶,服務端可讀取。典型用途:
// 前端
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
// 後端 (Spring MVC)
@GetMapping("/api/data")
public String api(@RequestHeader(value="X-Requested-With", required=false) String xrw) {
if (!"XMLHttpRequest".equals(xrw)) return "forbidden"; // 非 AJAX 拒絕
return "data";
}
xhr.setRequestHeader('Authorization', 'Bearer ' + token);
xhr.setRequestHeader('Accept-Version', 'v2');
Referer、Origin、Host、Cookie 等Access-Control-Allow-Headers 白名單放行自定義 HeaderAccess-Control-Expose-Headers 限制)