環境
ruby on rails 6
webpacker
困っていること
ruby on rails6で例えば更新ボタンを押したり、遷移したりした時の様なリクエスト毎にlocalstorageに保存しているtokenをheaderに仕込んで送信したいのですが上手くいきません。
目的はrequestを送る処理毎にheaderにtokenを仕込む記述をせず、共通化させたい為です。
axiosのinterceprtorsを使うと実現できるらしいのですが、上手くいかず。。。
記法がよくないのかなと思っているのでご確認いただけると幸いです。
axiosはyarn経由でインストール済みで、このser_header.jsというjsファイルもapplication.jsで読み込んでいることも確認しております。
//app/javascript/packs/set_header.js import axios from 'axios'; axios.interceptors.request.use((config) => { if(['get','post'].includes(config.method)) { config.headers.common["access-token"] = localStorage.getItem("token"); config.headers.common["uid"] = localStorage.getItem("uid"); config.headers.common["client"] = localStorage.getItem("client"); config.headers.common["token-type"] = localStorage.getItem("token-type"); config.headers.common["expiry"] = localStorage.getItem("expiry"); console.log(config.headers.common["access-token"] );/*tokenが表示されない*/ } return config; }, (error) => { return Promise.reject(error); });
上の様にHTTPリクエストがgetもしくはpost出会ったらheaderにtoken等を仕込むという処理を書いているのですが、
どうもconsole等を確認してもheaderにtokenが付与されている形跡がありません。
どの様に記述したらheaderにtokenを仕込めるでしょうか?
重ねてお力添え頂けると幸いです。よろしくお願いします。
あなたの回答
tips
プレビュー