0

var xmlHttpRequest = новый объект ActiveXObject ("Msxml2.XMLHTTP"); xmlHttpRequest.open ("POST", "http://vat/_vti_bin/lists.asmx", false);Javascript Msxml2.XMLHTTP доступ к серверу терминалов запрещен

Как я могу позволить сценарию работать на сервере терминалов? Когда я открываю его на своем локальном компьютере, он работает, но когда я делаю то же самое в браузере на сервере терминалов, я получаю Access Denied.

Я попытался с помощью ServerXMLHTTP, но затем я получаю Cannot create automation object

ответ

0

Является ли vat ваш локальный компьютер или сервер терминалов? Я предполагаю, что это ваш локальный компьютер, а это значит, что вы будете ограничены Same Origin Policy - это означает, что вы можете делать запрос только с того же сервера, с которого страница отправляется.

Вы можете обойти это, используя JSONP, который - в двух словах - загружает ajax в качестве тега сценария с помощью обратного вызова js.

Или просто переместите свой канал ajax на свой веб-сервер.

+0

НДС - это сервер (cit-srv-004.Converge-IT.local - имя dns). Dns name Terminal server is (cit-srv-003.Converge-IT.local). Но он работает в моем браузере на локальном компьютере, я получаю доступ, когда я делаю то же самое в браузере на рабочем столе сервера терминалов. – Jeroen

+0

Измените свой запрос, чтобы указать на '/ _vti_bin/lists.asmx' (то есть нет имени хоста) –

+0

Не думайте, что это сработает, потому что я звоню с http: // crm/.. – Jeroen