В MVC вызов веб-службы с неработающим вызовом ajax дает код ошибки 404? - PullRequest
2 голосов
/ 21 января 2012

В моем .net Framework с MVC вызов вебметода, как.webservice1.asmx / helloWorld с Ajax выдает ошибку 404 не найдена .. На моем другом сервере такой же код работает.Чего не хватает, чтобы позвонить ??и физический путь дают мне тот же webserive и webmthod в моем .net проекте .. пожалуйста, помогите мне ..

РЕДАКТИРОВАТЬ

код для вызова веб-службы

$.ajax({
   type: "POST",
   url: "/WebServices/WebService1.asmx/HelloWorld",
   data:"{}",
   contentType: "application/json; charset=utf-8",
   dataType: "json",
   async: false,
   success: function(msg) {
       var data = msg.d;  
   },
   error: function(msg) { 
   alert(msg); 
   }
 });

1 Ответ

0 голосов
/ 21 января 2012

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

<script type="text/javascript">
    $.ajax({ 
        type: "POST", 
        url: "@Url.Content("~/WebServices/WebService1.asmx/HelloWorld")", 
        data: "{}", 
        contentType: "application/json; charset=utf-8", 
        dataType: "json", 
        async: false, 
        success: function(msg) { 
            var data = msg.d; 
        }, 
        error: function(msg) { 
            alert(msg); 
        } 
    });
</script>

Обратите внимание, что URL-адрес веб-службы больше не /WebServices/..., а генерируется с помощью помощника URL. Так, например, если вы развернете свое приложение в виртуальном каталоге в IIS, помощник примет во внимание этот виртуальный каталог.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...