koajs開発時に設定したクッキーはブラウザで読み込めません.
最近はkoajsで開発していますが、他のものは順調ですが、cookiesを使う時に問題が発生しました.cookieをサーバーで読むなら問題はありません.しかし、ブラウザでクッキーを読むと問題が発生します.
cookieを設定するのは、公式提供の方法です.
どうしてですか?http Onlyはどうしてこんなに影響力がありますか?はっきり言ってもhttp協議の了解が足りないです.
検索してみたら、httpOnlyがtrueであれば、cookieがjsに読み込まれるのを避けることができます.不法な手段はxss攻撃などでユーザー情報を読み取り、重大な結果をもたらします.httpOnlyはhttpプロトコルでしかcookieを取得できないという意味です.
文章のリンクを添付します. http://blog.csdn.net/zzzmmmkkk/article/details/10862949 この中でhttpOnlyについて詳しく話していますので、見てください.
cookieを設定するのは、公式提供の方法です.
this.cookies.set('name', 'tobi');
しかし問題が来ました.このようにデバッグツールに設置するとクッキーが見られますが、問題はjsでは入手できません.つまり、 document.co okieはまったく読めません.最初はpath/domainの問題と疑っていましたが、設定後は何の効果もありません.cookieを設定すると、全部で次のいくつかのパラメータがあります.ctx.cookies.set(name, value, [options])
cookie name ,options :
signed:
expires: cookie
path: cookie , /'
domain: cookie
secure: false cookie HTTP ,true cookie HTTPS 。
httpOnly: true cookie HTTP
継続的なテストを経て、最後のパラメータhttpOnlyの問題であることが分かりました.そのデフォルトはtrueです.falseに設定しなければならないです.つまり、正しい方法はこのようです.this.cookies.set('name', 'tobi',{httpOnly:false});
すべては光を見た!どうしてですか?http Onlyはどうしてこんなに影響力がありますか?はっきり言ってもhttp協議の了解が足りないです.
検索してみたら、httpOnlyがtrueであれば、cookieがjsに読み込まれるのを避けることができます.不法な手段はxss攻撃などでユーザー情報を読み取り、重大な結果をもたらします.httpOnlyはhttpプロトコルでしかcookieを取得できないという意味です.
文章のリンクを添付します. http://blog.csdn.net/zzzmmmkkk/article/details/10862949 この中でhttpOnlyについて詳しく話していますので、見てください.