Вызов функции Rails через POST - PullRequest
0 голосов
/ 22 февраля 2011

Я пытаюсь преобразовать скрипт php в скрипт ruby, который находится внутри приложения RoR. Это делается из блока Javascript, который находится за пределами приложения RoR. Я успешно вызвал функцию в приложении RoR через GET, но я хотел бы сделать это с помощью POST.

То есть это работает:

function foo() {
    var uri = "http://localhost:3000/foo/bar?thing1=654&thing2=what";           
    xmlhttp = new XMLHttpRequest();
    xmlhttp.open("get", uri, true);
    xmlhttp.send();
}

Это не:

function foo() {
    var uri = "http://localhost:3000/foo/bar";
    var params = "thing1=654&thing2=what";          
    xmlhttp = new XMLHttpRequest();
    xmlhttp.open("post", uri, true);
    xmlhttp.send(params);
}

Что-то другое, что мне нужно сделать, чтобы это работало с POST?

Параметры, которые фактически передаются в контроллер: {"controller" => "foo", "action" => "bar"}

Обновление

Странно, но на основании отчетов о брандмауэрах выглядит так, что по какой-то причине он использует не POST, а OPTIONS. Что-то не так с тем, как я это написал?

Ответы [ 2 ]

2 голосов
/ 22 февраля 2011

Возможно, вам придется отправить правильный заголовок Content-Type.

xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
0 голосов
/ 24 февраля 2011

Проблема заключалась в том, что на живом сайте URL, который я указывал, был , а не в том же домене.Я думал, что это было.

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