1. 程式人生 > >php setcooike()失敗的原因之一,希望能幫到你

php setcooike()失敗的原因之一,希望能幫到你

stx title 遇到 mage pan php image fig flush

  在學習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中文說明

技術分享圖片

php setcooike()失敗的原因之一,希望能幫到你