zoukankan      html  css  js  c++  java
  • php setcooike()失败的原因之一,希望能帮到你

      在学习php的道路上,又双叒遇到了奇奇怪怪、意想不到的问题,emmm...其实找到最后,我遇到的问题其实不出在php上,但因为是php的方法没有生效,我们找病症肯定是从它着手的。

      首先。看帖子和php的文档,都说在setcookie之前不能有输出。PHP手册

      还试着使用ob_start()、ob_end_flush()输出缓冲,但也没有收到想要的效果。如果你的问题也不在这里,往下看:

      有帖子说是utf-8编码格式bom作的妖

    PHP中utf-8之bom引发的问题

    另一位朋友给出的解决办法

      那么我使用的是VSCode,右下角有一键转换

      非常爽,嘿嘿...然并卵,问题也不在这里,继续:

    cookie设置(前端和后台)

      里边提到了一句话解决了困扰我一天的问题。

    XMLHttpRequest发送请求时需要设置withCredentials属性为true,来允许浏览器在自己的域设置cookie值。

    如果withCredentials没有设置为true,就会出现Response Headers有Set-Cookie,但是浏览器却没有存储cookie的情况
      那么我在使用nuxt&axios,更改一下设置:~/plugins/axios.js

    1 import axios from 'axios';
    2 
    3 axios.defaults.withCredentials=true;

      nuxt.config.js

    1 plugins: [
    2     ...,
    3     '@/plugins/axios',
    4   ]

      重新编译一下:npm run dev

      

      哎,终于成功。7拐8拐回到了前端,所以说电影不给彩蛋看完,你永远都不知道故事会TM发生什么转折(笑cry)

      其实以前看axios文档时,还是看到了是否允许携带cookie这个选项,但没想到的是,不给个true,它都不让你设置上,小老板真是霸道。。。Axios中文说明

     

  • 相关阅读:
    Python 实践
    Keras实践
    NLP S实践
    Spark java 实践
    Seaborn数据探索可视化
    Linux实践
    Redis
    ML算法选型
    Elasticsearch issue
    牛客练习赛37
  • 原文地址:https://www.cnblogs.com/bjhl/p/10870708.html
Copyright © 2011-2022 走看看