في Rails، كيف يمكنني الوصول إلى Request.ServerVariables كما تفعل في ASP؟

StackOverflow https://stackoverflow.com/questions/850934

سؤال

أرغب في الوصول إلى متغيرات خادم الطلبات المحددة، لكن يبدو أنني لا أستطيع العثور على أي شيء على Google حول كيفية الوصول إلى Server Vars لكائن الطلب.كيف أفعل هذا أم أنني محكوم عليه بأن لا أعرف أبدًا؟

مثال على سبب رغبتي في القيام بذلك (ولكن ليس في الواقع ما أريد القيام به):
يقوم المستخدم بتسجيل الدخول، وتريد تخزين عنوان IP الخاص بالمكان الذي قام بتسجيل الدخول فيه، أو ربما أرغب في تسجيل وكيل المستخدم أو المرجع من المتصفح الذي يشاهدون فيه الموقع.

هل كانت مفيدة؟

المحلول

يجب عليك أن تنظر إلى request الكائن المتاح من وحدة التحكم.هناك مجموعة من الأساليب مثل

request.remote_ip

يمكنك قراءة المزيد عن كائن الطلب على موقع Rails API

نصائح أخرى

ال request يقوم Accessor الموجود في وحدة التحكم بإرجاع كائن ActionDispatch::Request الذي يمكنه الوصول إلى كافة متغيرات الخادم التي تتوقعها.

أفضل الوثائق التي وجدتها هنا: http://apidock.com/rails/v3.2.1/ActionDispatch/Request

في بعض الأحيان يكون لديك أساليب مثل request.remote_ip كما هو مذكور في الإجابة الأخرى، في أحيان أخرى يمكنك الوصول إلى الأشياء عبر request.env, ، على سبيل المثال، للحصول على وكيل المستخدم، استخدم request.env["HTTP_USER_AGENT"]

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top