403禁止访问错误

5

当我使用jquery访问web服务时,我遇到了403禁止错误。我已经在虚拟目录中发布并创建了它。这个错误的原因是什么,如何纠正?我已经将webservice添加到同一解决方案中。以下是我的代码:

$(document).ready(function() {   
         $("#sayHelloButton").click(function(event){   
             $.ajax({   
                 type: "POST",
                 url: "App_Code/DummyWebService.asmx/HelloToYou",   
                 data: "{'name': '" + $('#name').val() + "'}",   
                 contentType: "application/json; charset=utf-8",   
                 dataType: "json",   
                 success: function(msg) {   
                     AjaxSucceeded(msg);   
                 },   
                 error: AjaxFailed   
             });   
         });   
     });   
          function AjaxSucceeded(result) {   
              alert(result.d);   
          }   
          function AjaxFailed(result) {   
              alert(result.status + ' ' + result.statusText);
          }

我认为在使用Web服务的URL路径时出现了错误。我使用了路径'DummyWebservice.asmx',但是出现了500内部服务器错误。


你需要提供更多的信息。你有客户端或服务器端的代码片段吗?请求和响应头的副本是什么?远程Web服务是什么?你的问题太笼统了,没有人能够回答,只能在黑暗中猜测。 - Brian Campbell
你尝试过使用绝对路径吗? url: "/DummyWebService.asmx/HelloToYou" - Doug Neiner
尝试过程中出现了404-文件未找到的错误... - Developer404
1个回答

4

IIS和开发服务器会阻止访问您的App_Code文件夹。这是存储您的类文件的位置,但您的asmx需要在公共可见位置。

将asmx移动到站点根目录,但将asmx.cs留在App_Code中以便编译。

然后显然更改JavaScript中的路径并尝试一下。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接