В настоящее время я создаю функцию, которая делает запрос POST для приложения. Я правильно настроил строку JSON, но когда я использую отладчик и отслеживаю сетевую активность, я никогда не вижу отправки какого-либо запроса из моего браузера. Вот разбивка моего кода. Мне пришлось сделать некоторые обманки, так как это код PoC, и первоначально он касался страницы jsp.Запрос Ajax не отправляется
$(document).ready(function() {
$("#myForm").submit(function(e) {
e.preventDefault();
var myJsonObject = new Object();
//set up my object and stringify it into myString
sendDataToServer(myString);
});
function sendDataToServer(jsonString) {
$.ajax({
type: "POST",
data: jsonString,
contentType: "application/json; charset=utf-8",
url: "https://my.target.server.com"
dataType : 'json',
processdata: true,
success: eval("successMessage"),
error: eval("failureMessage")
});
}
function successMessage() {
alert("Post was successful");
}
function failureMessage() {
alert("Post failed");
}
});
Теперь мой Аякс вызов неудачен (по-прежнему имеет дело с верительными вопросами и сертификатами), но я не могу даже увидеть любой запрос отправляется с самого начала. Является ли мой вызов ajax неправильным, или есть какая-то другая проблема? Если мне отказано в доступе к серверу из-за проблем с сертификатом, не получилось бы это при попытке настроить соединение с сервером перед отправкой любого запроса?
И для дополнительной информации, я вижу предупреждение failMessage(), когда я отправляю свою форму, поэтому я знаю, что она хотя бы вызывает функцию ajax.
** eval is evil. ** Не используйте eval в этом контексте. Используйте закрытие. –
@LorenzMeyer Извините, новичок в вызовах AJAX. Я искал закрытие, и это просто определение функции в параметре успеха? – user3334871
Справа. Просто вызовите функцию. Не оценивайте это. – isherwood