Вопрос по asp.net-mvc, web-services, wcf, jquery – Как мне вызвать веб-сервис WCF из jQuery?

2

Как я могу вызвать службу wcf из jquery (я использую asp.net mvc). Вот что я делал с asmx webservices:

$.ajax({
    type: "POST",
    url: "Services/MyService.asmx/DoSomething",
    data: "{}",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function(msg) {
        //do the magic
    }
});

Как мне сделать то же самое с сервисом WCF?

@ Джон Сондерс: почему вы изменили название и теги? Вы сначала прочитали вопрос? Hannoun Yassir
@Джон Сондерс: я знаю, что код, который я разместил, - это то, что я обычно делаю, чтобы вызывать службы asmx, и теперь я хочу помочь с wcf :) (это не повторяется: d) Hannoun Yassir
@Yassir: это дубликатstackoverflow.com/questions/608006/…, Вы можете не осознавать этого, но вы не вызываете WCF, а унаследованные сервисы ASMX. Вот почему он говорит ".asmx". John Saunders
ок :) спасибо теперь лучше Hannoun Yassir
@Yassir: Да, я читал это. Вы не сделалиsay что-нибудь. Весь вопрос был в коде, и мне пришлось внимательно прочитать, чтобы увидеть, что это код, который выused to использовать. Обратите внимание, как это выглядит с моим последним редактированием. John Saunders

Ваш Ответ

3   ответа
1

Ясир,

Точные детали того, как вы вызываете конкретную службу WCF, будут зависеть от службы. Например, это сервис SOAP или сервис REST? JSON или простой XML.

Хорошей новостью является то, что если ваша служба WCF точно такая же, как ваша служба ASMX, то вы можете вызывать ее точно так же.

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

Что происходит, когда вы пытаетесь это назвать?
Пожалуйста, попробуйте назвать его ТОЧНО, как вы это делали с ASMX, и посмотрите, что произойдет. Я не знаю, почему вы ожидаете, что это будет совсем другое. Вы говорите, что создали сервис, и он работает. Как вы это проверили? Вы проверяли это возвращая JSON? Какую часть вызова этой услуги вы не понимаете?
Я уже создал сервис, и он работает, все, что мне нужно, это вызвать его с помощью jquery Hannoun Yassir
Я не знаю, как это назвать, потому что все примеры, которые я нашел, создают прокси для использования веб-сервиса (C # или VB) Hannoun Yassir
2

Рик Страл есть отличный пример, почти такой же, как вы перечислили.

1

Я только что опубликовал статью, объясняющую, как выполнить вызов службы WCF с использованием jQuery и JSON.

http://yoavniran.wordpress.com/2009/08/02/creating-a-webservice-proxy-with-jquery/

Надеюсь, это поможет вам.

Йоав.

Похожие вопросы