Skip to content

fix: Cookie値がArrayになりstripエラーが発生する問題を修正 (#18)#41

Merged
topi-log merged 2 commits into
mainfrom
fix/#18_cookie_auth_strip_error
Apr 25, 2026
Merged

fix: Cookie値がArrayになりstripエラーが発生する問題を修正 (#18)#41
topi-log merged 2 commits into
mainfrom
fix/#18_cookie_auth_strip_error

Conversation

@topi-log

Copy link
Copy Markdown
Owner

Summary

  • cookies[key]request.cookies[key] に変更。cookies はCookieJarで値がArrayになる場合があるが、request.cookies はflat string hashのため文字列のみ返す
  • before_actionprepend_before_action に変更。DeviseTokenAuthの set_user_by_token より先にCookieヘッダーをセットする順序を保証する
  • OmniauthCallbacksControllerskip_before_action :set_auth_headers_from_cookies を追加。OAuth callbackはCookieからの認証ヘッダー注入が不要なため

Test plan

  • ログイン(GitHub OAuth)が正常に完了すること
  • ログイン後に記録ページが表示されること
  • ログアウトが正常に動作すること

🤖 Generated with Claude Code

- `cookies[key]` → `request.cookies[key]` に変更(flat string hashで返るためArray問題を回避)
- `before_action` → `prepend_before_action` に変更(DeviseTokenAuthのset_user_by_tokenより先に実行)
- OmniauthCallbacksControllerでset_auth_headers_from_cookiesをskip

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@vercel

vercel Bot commented Apr 25, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
leaf-record Ready Ready Preview, Comment Apr 25, 2026 7:04am

- Cookie経由での認証テストを追加(このテストがあれば本番エラーは事前に検出できた)
- OAuthコールバックのリクエストスペックを新規追加
- rails_same_site_cookieをGemfileから削除(Rack3.xでArray Set-Cookieヘッダーのstripエラーが発生するため)
  - Rails 7.1のcookies_same_site_protection = :noneで代替済み
- OmniauthCallbacksControllerにset_flash_messageのno-opオーバーライドを追加(APIモードでflash未使用のため)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@topi-log topi-log merged commit 09ad39a into main Apr 25, 2026
6 checks passed
@topi-log topi-log deleted the fix/#18_cookie_auth_strip_error branch April 25, 2026 07:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant