Я настраиваю API для простого веб-сервиса и наткнулся на проблему. Я использую Ruby on Rails для серверной части и вызов JJuery ajax для отправки POST для создания экземпляра модели. Код JavaScript:
$.ajax({
type: "POST",
url: "http://localhost:3000/api/v1/person/add",
data: "name=John&location=Boston",
success: function(msg){
alert( "Data Saved: " + msg );
}
});
Когда я выполняю это на сервере, я получаю тип запроса OPTION, который, я думаю, является первым вызовом двух, необходимых для завершения запроса POST (?), Поскольку эти сайты не находятся в одном домене (так как вызовы будет сделано удаленно) это не удастся. Однако главная проблема заключается в том, что сам запрос вообще не содержит никаких данных в теле. Я предполагаю, что этот первый вызов не отправляет какие-либо данные, но ждет какого-то «ОК», чтобы иметь возможность отправить данные ?? Если нет, то почему он пуст? Я не хочу использовать запрос GET, так как в руководствах RESTful API говорится, что он должен использовать POST для этой цели, плюс мне может потребоваться отправить больше данных, чем может обработать GET. Поэтому, если мои предположения верны и этот запрос POST не выполняется из-за междоменных вызовов, каковы мои варианты?