У меня есть html что-то вроде этого от http://fromDomain.com и размещение на http://toDomain.com, которое является рельсовым приложением.перекрестный домен после обновления очищает значения сеанса
<html>
<h1>Test Redirect with Post</h1>
<button id="submit" onclick="send_form()">Submit</button>
<script>
function send_form() {
var form = document.createElement("form");
form.setAttribute("method", 'post');
form.setAttribute("action", 'http://todomain.com/someaction');
form.appendChild(addElement('field1', 'field1'));
form.appendChild(addElement('field2', 'field2)');
document.body.appendChild(form);
form.submit();}
function addElement(key, value){
var hiddenField = document.createElement("input");
hiddenField.setAttribute("type", "hidden");
hiddenField.setAttribute("name", key);
hiddenField.setAttribute("value", value);
return hiddenField;}
</script>
</html>
В приложении rails я делаю что-то вроде этого.
def someaction
if not session[:token]
session[:token] = @self.getsomehash
end
end
Проблема после того, как загружается страница http://todomain.com/someaction если пользователи хитов обновления браузера, то он будет повторно опубликовать страницу и сессионный хэш получить сброс. Похоже, я, когда браузеры репозиториев репозитория создают новый сеанс, а затем используют существующий.
Является ли мое предположение правильным? Есть ли способ разрешить обновление и по-прежнему сохранять значения в любом случае?
Я не очень хорошо знаком с средой размещения RoR, но файлы cookie сеансов cookie (переходные файлы cookie) обычно хранятся в пользовательском агенте для идентификации посетителя в этих ситуациях. Этот механизм должен быть независимо от того, как RoR осуществляет управление своим состоянием, на стороне сервера. какой браузер вы используете? –
можете ли вы использовать режим разработчика вашего браузера, чтобы определить, что ваш браузер хранит cookie сеанса для, когда он впервые посещает страницу/сайт после первого сообщения? .. .. он должен иметь значение домена (Scope), связанное с файлом cookie сеанса, если создается первый куки-файл сеанса, указывает ли это как домен ?. –
Я использую Chrome, и я могу использовать любой браузер для тестирования, если вы его порекомендуете. Я также проверю область домена. – NMK