【问题标题】:Server cookies lost on page refresh服务器 cookie 在页面刷新时丢失
【发布时间】:2019-02-26 03:37:41
【问题描述】:

我尝试 fetch 来调用 api 并将凭据“include”传递给最初从服务器设置 cookie 但在页面刷新时 cookie 丢失的标头。

public post = async (payload:any, endpoint: string):Promise<any> => {
        return new Promise((resolve, reject) => {
            console.log(${config.baseUrl}${endpoint})

            const URL = ${config.baseUrl}${endpoint};
            fetch(URL, {
                credentials: 'include',
                method: 'POST',
                body: JSON.stringify(payload),
                headers: new Headers({
                  'Content-Type': 'application/json'
                })
            })
            .then(data => data.json())
            .then((data:any) => {
                console.log("data", data)
                const responsePayload = {
                    statusCode: data.status,
                    data: data
                };
                resolve(responsePayload);
            })
            .catch((error:any) => {
                if (error.response === undefined) {
                    const errorpayload = {
                        statusCode: 503,
                        title: 'network error occured',
                        parameter: 'Network Error',
                    };
                    reject(errorpayload);
                } else {
                    const errors = error.response.data.errors;
                    const errorPayload = {
                        statusCode: error.response.status,
                        data: error.response.data.errors,
                    };
                    reject(errorPayload);
                }
            });
        });
    };

【问题讨论】:

  • fetch 已经返回了一个promise,为什么你的函数被promise 包裹了?
  • 另外,您刷新页面的代码在哪里?
  • 这可能会对您的情况有所帮助 stackoverflow.com/questions/17714962/… 如果不查看整个代码上下文,我无法为您提供更多信息。

标签: javascript cookies fetch


【解决方案1】:

最好在登录时读取 cookie 并将其存储到 loaclstorage,然后您可以从那里以您想要的方式使用它。

【讨论】:

    猜你喜欢
    • 2019-09-12
    • 2013-07-16
    • 2011-02-01
    • 2020-03-25
    • 2020-03-02
    • 2014-12-31
    • 1970-01-01
    • 2022-11-13
    • 2020-08-28
    相关资源
    最近更新 更多