鍍金池/ 問答/HTML/ fetch請求怎么加入session?

fetch請求怎么加入session?

項(xiàng)目用的是fetch做的請求,后臺(tái)說可以用session來處理會(huì)話權(quán)限!但是請求頭中怎么加入session。

查了查資料說是request.getSession 可以獲取到,但是在fetch封裝的請求中找不到request,有些疑惑?應(yīng)該怎么封裝。。。

export const get = (url, query = {}, options = {}) => {
  const defaultOpt = {
    method: 'GET',
    timeout: requestTimeOut,
    credentials: 'include',
    headers: { ...options }
  }

  defaultOpt.headers = completeHeader(defaultOpt.headers)
  console.log(defaultOpt)
  return fetch(getUrl(url, query), defaultOpt).then(checkStatus).then(parseJSON)
}

上面是其中的一個(gè)例子

網(wǎng)上又說加入credentials: 'include',但是還是不太明白。

回答
編輯回答
逗婦惱

fetch默認(rèn)不帶cookie 如果是同域下的話要加 mode

const defaultOpt = {
    mode: "same-origin",
    credentials: "same-origin",
    ...
}
2018年4月22日 18:50
編輯回答
朕略傻

一般 sessionid 放在 cookie 中的, session 保存在后臺(tái), 向服務(wù)器發(fā)送請求會(huì)帶上同域下的 cookie,不需手動(dòng)設(shè)置

2018年9月10日 21:26
編輯回答
北城荒

就是加上credentials啊,fetch請求header默認(rèn)不帶cookie,后端就獲取不到sessionid,加上才行。

2017年9月7日 22:45