Я бьюсь головой об стену с этой проблемой.Я использую JQuery 1.6.2 для использования метода AJAX на очень упрощенном HTTP-сервере, работающем в отдельном поддомене.Если я просто отправлю простую HTML-форму, я получу правильный вывод, но, конечно, я хочу сделать это с помощью Javascript.
Поэтому я использовал метод AJAX, как показано ниже:
$('.send_sample').click(function () {
var request = $.ajax({
url : "http://removedurl:8080/SAMPLES",
type : 'POST',
dataType : 'text',
crossDomain : true,
cache : false,
accepts : 'text/plain',
data : {username : '<?php echo $_SESSION['username'] ?>', first_name : '<?php echo $_SESSION['first_name']; ?>', last_name : '<?php echo $_SESSION['last_name']; ?>', company : '<?php echo $_SESSION['company']; ?>', sequence_id : '', filename : '', sample_id : '', quantity : '', output_file : '', delivery : '', email_copy : ''},
success : function (return_value) {
console.log(return_value);
},
error : function (error_info) {
console.log(error_info);
},
complete : function (complete_jqXHR, textStatus) {
console.log(textStatus);
}
});
console.log(request);
});
Обратите внимание, что URL-адрес был удален, но все остальное такое же, включая порт 8080 (поверьте мне, сервер принимает запросы HTTP на 8080.
Поэтому, когда я открываю fiddler и запускаю эту страницу, запрос уходит ивозвращается совершенно нормально в Fiddler. Я даже вижу правильный вывод, который является просто словом TRUE. Вы можете даже увидеть весь необработанный ответ здесь:
HTTP/1.1 200 200 OK
Connection: close
Content-Length: 8
Server: Indy/9.0.18
TRUE
, как я уже говорил, этот HTTP-сервер, который использует это программное обеспечениеЭто очень просто. Но JQuery по возвращении переходит непосредственно в Error без других описаний. Я также получаю небольшое сообщение, если я отлаживаю в Chrome:
XMLHttpRequest не может загрузить http://removedUrl:8080/SAMPLES. Originhttp://192.168.2.140 не разрешен Access-Control-Allow-Origin.
Кто-нибудь знает, что может быть причиной этого.
Кроме того, я постепенно добавляюредактировал поля в методе JQuery ajax : dataType, crossDomain, cache, принимает ... просто чтобы увидеть, если это что-то меняет.
Спасибо!