cookieがセットされない
サーバー(golang)でhttp.SetCookieしているのにブラウザ側でクッキーがセットされなかった件について、CORSの設定が足りなかったようです。
フロント側
APIクライアントでcredentialsの使用を設定
axiosの場合はwithCredentials
const backend = axios.create({ baseURL: 'http://localhost:5000/', withCredentials: true, })
バックエンド側
CORS設定でAccess-Control-Allow-Credentials
をtrue
にすること、その他の値で"*"
を使わないことが必要なようです。
以下の例については参考程度にお願いします。
w.Header().Set("Access-Control-Allow-Origin", "http://localhost:3000") w.Header().Set("Access-Control-Allow-Headers", "Accept, Content-Type, X-CSRF-Token, Authorization") w.Header().Set("Access-Control-Allow-Credentials", "true") w.Header().Set("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS")
仮置きで'*'にしていた~Originと~Headersが影響していることに気づかず時間がかかってしいました。