Вызов службы WCF через Javascript - PullRequest
2 голосов
/ 12 ноября 2008

Как я могу получить доступ к Сервису WCF через JavaScript? Моя проблема в том, что мне нужно получить доступ к контрактам на выполнение операций через JavaScript (на моем веб-сайте не включен Ajax). Ранее для вызова веб-сервисов .asmx, Я использую следующий фрагмент кода

var xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
xmlHttp.open("POST", URL, false);
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlHttp.send(payload);
xmlData = xmlHttp.responseXML;

где url - это местоположение моего веб-сервиса.

Теперь, если я пытаюсь использовать службу wcf таким же образом, я не могу. Многие техники объясняют через AJAX подход, Мне нужен подход без AJAX.

Ответы [ 2 ]

4 голосов
/ 12 ноября 2008

Используя XMLHTTP, вы используете ajax.

Здесь приведен полный пример:

jQuery AJAX вызывает службу WCF REST

0 голосов
/ 12 ноября 2008

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

Во-первых, ваша служба WCF должна иметь:

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]

Затем, на стороне javascript, измените

"Content-Type", "application/x-www-form-urlencoded"

К

"Content-Type", "application/json"

Помните, что ответ будет отформатирован в формате json, поэтому использование парсера может быть полезным.

Почему вы не хотите использовать внешние библиотеки?

...