【问题标题】:HTTP 500 Error jQuery Ajax with Web service带有 Web 服务的 HTTP 500 错误 jQuery Ajax
【发布时间】: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 解释)。如果我理解错了或者有人想分享更多,那么欢迎他们:)

标签: jquery asp.net ajax web-services


【解决方案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

    【讨论】:

    • 两个项目的端口号不同..我不能像你在你的帖子中提到的那样做。如果我错了,请纠正我:)。顺便说一句,我会检查链接。
    猜你喜欢
    • 2017-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-10
    • 2013-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多