Шифрование параметров через контроллеры - PullRequest
1 голос
/ 24 января 2010

Мне нужно передать параметр из одного метода в контроллере в другой.

Насколько я понимаю, я должен передать параметры как GET, выставив их в строке URL.

Каков наилучший способ шифрования данных, чтобы никто не мог видеть, что на самом деле передается в строке? Кроме того, есть ли способ передать его через POST или мое первоначальное понимание верно?

Ответы [ 2 ]

2 голосов
/ 24 января 2010

Я не использовал RoR, но в веб-мире эта проблема решается с помощью сессий. Используя сеансы, вы можете сохранить параметры на сервере и избежать отправки конфиденциальных данных с помощью GET или POST (оба небезопасны).

Руководство по безопасности Ruby on Rails выглядит как отличное прочтение, связанное с этим.

0 голосов
/ 24 января 2010

Я предлагаю вам абстрагировать ваш код в lib/, чтобы вам не приходилось вызывать дополнительные методы. Вместо того, чтобы делать новый HTTP-запрос, просто поместите код в центральное место и вызовите его оттуда.

class MyController < ApplicationController
  def index
    MyLibrary::Thing.do_stuff
  end

  def show
    MyLibrary::Thing.do_stuff
  end
end

# lib/my_library/thing.rb
module MyLibrary
  module Thing
    def self.do_stuff
      # do stuff!
    end
  end
end

Таким образом, вы можете получить доступ к одному и тому же коду в нескольких действиях без дополнительных HTTP-запросов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...