带有 Web 服务的 HTTP 500 错误 jQuery Ajax

Posted

技术标签:

【中文标题】带有 Web 服务的 HTTP 500 错误 jQuery Ajax【英文标题】:HTTP 500 Error jQuery Ajax with Web service 【发布时间】:2012-12-15 14:19:05 【问题描述】:

我在单个 Visual Studio 解决方案中有两个简单的项目,以了解 jQuery ajax 请求的工作原理。一个是 Web 服务,第二个是使用 Web 服务的项目。

您可以从这里下载非常小的项目。 Download Project file

正如您在项目中看到的,每当我尝试调用 Web 服务时,都会发生内部服务器错误 500。

在 chrome 中,我可以看到以下警报(由 Ajax 调用的“错误”函数执行)

请帮我找出问题..

编辑:

function btnClick() 
        debugger;
        var txtValue = $('#txtValue');
        var text = txtValue.val();
        //
        //
        $.ajax(
            url: "http://localhost:12000/ExampleJsonWS.asmx/getValue",
            type: "POST",
            dataType: "json",
            data: "" + txtValue.val() + "",
            timeout: 30000,
            async: false,
            contentType: "application/json; charset=utf-8",
            success: function (data) 
                debugger;
                alert(data);
                return data;
            ,
            error: function (result) 
                debugger;
                //alert(e);
                alert(result.status + ' ' + result.statusText);
            
        );
    

【问题讨论】:

如果您收到 500 错误,则表示服务器端有问题。您可以在开发人员控制台中查看请求/响应,以确保您通过 jQuery 的 Ajax 发送正确的信息。此外,发布到问题中的一些代码比要求我们下载来源不明的文件要好。 如果您通过正常的 http 请求访问端点会发生什么? @JayBlanchard 我不确定要在此处保留什么代码,因此我添加了出现错误的代码(jquery 文件)。我希望这会做......顺便说一句,我确信webservice代码没有问题,因为它是现成的文件。 @parKing 你的意思是如果我运行 Web 服务?如果是这样,那么它在调用时运行良好,甚至没有错误。 @JayBlanchard 不,这是正确的,我得到了答案。我忘了在这里发帖。问题是它不可能通过将 web 服务保持在不同的项目中来发布,而 GET 可以做到这一点。 (由Phillip Hayden 解释)。如果我理解错了或者有人想分享更多,那么欢迎他们:) 【参考方案1】:

问题在于它不可能通过将 Web 服务保存在不同的项目中进行 POST,而 GET 可以做到这一点。 (由Phillip Haydon 解释)。如果我理解错了或者有人想分享更多关于它的信息,那么欢迎他们:)

有关更多信息,您可以查看此link

更好的选择是在项目中保留一个 Web 服务,并将另一个 Web 服务(需要)调用到项目的 Web 服务中。

【讨论】:

【参考方案2】:

我认为问题可能在于您从 Example.aspx 调用 Web 服务:

url: "http://localhost:12000/ExampleJsonWS.asmx/getValue",

试试这样的:

url: "/ExampleJsonWS.asmx/getValue",

另外,请查看此帖子:NETWORK_ERROR: XMLHttpRequest Exception 101。

【讨论】:

两个项目的端口号不同..我不能像你在你的帖子中提到的那样做。如果我错了,请纠正我:)。顺便说一句,我会检查链接。

以上是关于带有 Web 服务的 HTTP 500 错误 jQuery Ajax的主要内容,如果未能解决你的问题,请参考以下文章

Web.config - PayPal IPN 侦听器 - HTTP 错误代码 500:内部服务器错误

Web API POST 方法返回 HTTP/1.1 500 内部服务器错误

HTTP 错误 500.100 - 内部服务器错误 - ASP 错误 Internet 信息服务

将 .net 核心项目发布到带有 0x80070005 的 iis 时出现 HTTP 错误 500.19

iis建站HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容。

带有 jQ​​uery 的 Python JSON RPC - ServiceRequestNotTranslatable