Я конвертирую некоторый php-код в скрипт Ruby и пытаюсь полностью вызвать URL-адрес функции Rails из Javascript, который не связан с самим приложением Rails.Чтобы объяснить далее, скажем, у меня есть функция rails bar () в контроллере foo, которая доступна из URL сервера.
http://localhost:3000/foo/bar?param1=asdf¶m2=word1;word2
Когда это был foo.php, я просто делал это:
xmlhttp = new XMLHttpRequest();
xmlhttp.open("post", "my.domain/foo.php", true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send("param1=asdf¶m2=word1;word2");
Но чтобы заставить его работать с моим кодом Rails, мне нужно сделать это:
xmlhttp = new XMLHttpRequest();
xmlhttp.open("post", "my.domain/foo/bar?param1=asdf¶m2=word1;word2", true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send();
Это нормально, это добавление значений в БД, как я хочу, но запись для param2 получает только word1.Он достигает точки с запятой и игнорирует слово2.Я полагаю, что это просто потому, что URL обрабатывает точки с запятой и т. Д. Я полагаю, что я мог бы заставить его вести себя так, как когда-то, помещая мои параметры post в функцию send XMLHttpRequest (), но это не работает.Есть ли другой / лучший способ сделать такой звонок в случае RoR?