rtk查询会话id

问题描述 投票:0回答:2

我在本地托管一个 django 站点。如果baseQuery有这样的相对路径

baseQuery: fetchBaseQuery({ baseUrl: '/api' })
,那么会话ID会自动发送到标头中

headers: {
            'Accept': 'application/json',
            'Content-Type': 'application/json',
            'X-CSRFToken': Cookies.get('csrftoken')
          }

如果前端和后端部分托管在不同的端口上并且baseQuery中的路径是绝对的

fetchBaseQuery({ baseUrl: 'http://localhost:8000/api' }) 
(当 React 运行在 :3000 时) 那么会话 ID 不会附加到请求中,并且 Django 会在每个响应中发送一个新的会话 ID。 这是正常行为吗?如何改变?

reactjs django sessionid rtk-query
2个回答
0
投票

原来这样添加

credentials: "include"
就够了

baseQuery: fetchBaseQuery({ baseUrl: 'http://localhost:8000/api', credentials: "include" })

0
投票

您可以尝试像这样包含私有 api 的凭据

const public = createApi({ // -- )

const 私有 = createApi({ 凭证:“包括” })

© www.soinside.com 2019 - 2024. All rights reserved.