1. 程式人生 > >POSTMAN的get請求不支持設置header

POSTMAN的get請求不支持設置header

itl 支持跨域 base rip 技術分享 攔截 lib xmlhttp blank

原因參考這篇

http://blog.csdn.net/sylvilagus/article/details/50233335

postman是基於瀏覽器的插件,發出的請求都是通過調用ajax/xmlhttprequest的方式,必然受到瀏覽器的安全限制:

  1. 首先 XMLHttpRequest 出於安全考慮是不支持跨域的, 這一點postman已經向瀏覽器聲明了需要跨域的權限

技術分享

  1. 其次,部分header同樣由於安全原因,是無法在瀏覽器中set的,受制於瀏覽器的用戶特性

技術分享

具體哪些header不能set,要看XMLHttpRequest.js的源碼實現

var forbiddenRequestHeaders = [
    "accept-charset",
    "accept-encoding",
    "access-control-request-headers",
    "access-control-request-method",
    "connection",
    "content-length",
    "content-transfer-encoding",
    "cookie",
    "cookie2",
    "date",
    "expect",
    "host",
    "keep-alive",
    "origin",
    "referer",
    "te",
    "trailer",
    "transfer-encoding",
    "upgrade",
    "via"   ];

經驗證,以上屬性在postman中設置全部無效。解決方案是打開postman的攔截器(interceptor),之後就可以正常添加cookie了。

POSTMAN的get請求不支持設置header