مشکل با Authenticity_token

authenticity_token
token

#1

سلام

پروژم رو تو لوکال هم درحالت production و هم در حالت development میارم بالا هیچ یک از مشکلات زیر رو ندارم ولی زمانی که پروژه رو تو سرور میذارم این مشکلات رو دارم

نکته :‌ سروری که دستم هست رویه یه پورت خاصی هست

2 مشکل دارم :‌

۱- برای فرم ام از form_for استفاده کردم بعد کدی که جنریت میکنه توش authenticity_token رو توش گذاشته

وبعد تو apllication controller هم protect_from_forgery with: :exception هست اش ولی وقتی فرم رو سابمیت میکنم این اررور میاد‌:‌

The change you wanted was rejected.

Maybe you tried to change something you didn’t have access to.

If you are the application owner check the logs for more information.

شماره اررور هم تو کنسوله مرورگرم زده 422

انگار authenticity_token رو پیدا نمیکنه موقعی که سابمیت میکنه فرم بعد رفتم تو کنسول ریلز دیدم authenticity_token رو دریافت کرده ولی نمیدونم چرا نمیفهمه که ارسال شده :

با متد delete قراره به کنترلر بزنه و مثلا logout کنه بعد وقتی رو دکمه میزنم چون اجکسه هیچی نشون نداد و کاری نمیکنه طبیعتا ولی تو کنسوله خوده مرورگر رفتم دیدم همین اررور 422 رو داده و تو کنسوله ریلز هم رفتم با همون اررور عکس بالایی داده که مربوط به ActionController::InvalidAuthenticityToken (ActionController::InvalidAuthenticityToken)

بعد اومدم برای تست protect_from_forgery with: :exception از داخل application controller برداشتم دیگه اشکالی نگرفت ، که طبیعی هم هست که اشکال نگیره چون به AuthenticityToke توجه نمیکنه دیگه

دوستان راه حلی برای 2 مشکل بالا دارند ؟


#2

مشکل از تنظیم های puma ام بود و باید پورت اش رو هم تنظیم میکردم ، مشکل حل شد