当前位置: 首页 > 知识库问答 >
问题:

j查询 ajax 调用 - 获取有意义的错误消息

朱雅惠
2023-03-14

我有一个jQuery ajax调用,在IE中运行良好,但在Chrome和Firefox中不断出错。我的应用程序中的其他地方也有类似的ajax调用,它们在所有浏览器中都运行良好,但由于某种原因,这个浏览器不行。

首先,我在这里做的事情会在IE之外的浏览器中中断吗?其次,同样重要的是,有没有办法从< code>error: function (e) {}块中得到一些有意义的东西?

                $.ajax({
                type: "POST",
                url: "http://localhost:52350/FabRouting/Webservice/FinalizeFileStream.asmx/FinalizeFileStreamDoc",
                data: JSON.stringify({ DocID: docID, FileSize: file.size }),
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (data) {
                    if (data.d.length == 0) {
                        //error
                        $("[id$=txtResult]").val("error 0");
                    }
                    else {
                        $("[id$=txtResult]").val(data.d[0].Result);
                    }
                },
                error: function (e) {
                    //error
                    $("[id$=txtResult]").val("error");
                }
            });

共有2个答案

孙思源
2023-03-14

毕竟,它最终不是我的代码或浏览器(有点),只是我的错误。

我一直在研究和阅读一些东西,有人在跨域ajax调用中遇到了问题,并给出了错误。我并没有试图这样做,但是我确实有两个Visual Studio web服务器因为某种原因启动了。我看了一下,我用一个硬编码的URL(http://localhost:52350/fab routing/webservice)调用web service.......)我暂时使用了新的URL(http://localhost:59986/fab routing/Tes.....)访问该页面。

出于某种原因,这在IE中运行良好,但当我在Chrome或Firefox中尝试时,却无法运行。我改变了访问页面的位置,并从ajax调用中获得了很好的返回值。

我仍然想知道如何得到一个更有意义的错误,@dtryan让我做了一部分。如果有人能帮我找出答案,我会把他们的答案标为答案,而不是这个答案。

编辑:我后来发现我实际上能够像我以前尝试的那样收到错误消息,@dtryan建议的方式也是如此。问题是由于某种原因,因为它试图跨域而抛出错误,但我无法捕获该错误。

此后,我出现了内存不足等错误,我能够捕获并看到这些错误。我认为这只是一场完美的Storm,导致错误不可见。如果有人能够捕获这些错误,最好能知道。

慕才
2023-03-14

错误函数有三个参数

error: function(jqXHR, textStatus, errorThrown) { //code here }

而你只使用一个。错误复活节应该有一些更有用的信息。

EDIT2-请抓取我的答案,因为键不是字符串,所以它被破坏了-这应该没问题。然而,如果你在使用帖子,为什么要把数据串起来?您应该能够直接传递json数组

 类似资料:
  • 问题内容: HTML代码 PHP代码 这会显示一条警告消息 ,说明是否有错误? 问题答案: 在else块中,您可以看到如何捕获MySQL错误并将其显示在警报中。

  • 我写了一个查询 我在中设置了 2018-05-08 19:22:27.675错误1259--[nio-8080-exec-4]O.A.C.C.C.[.[.[/].[dispatcherServlet]:路径为[]的上下文中servlet[dispatcherServlet]的servlet.Service()引发异常[请求处理失败;嵌套异常为org.springframework.dao.inva

  • 我利用最后几天在Clojure和ClojureScript中深入挖掘了Clojure.spec。 到目前为止,我发现在依赖某种格式的数据的公共函数中,在和中使用规范作为警卫是非常有用的。 有没有人知道如何在或防护中获得更好的错误消息? 我知道和,但这对那些或警卫没有帮助。

  • 问题内容: 如果Ajax请求失败,我想捕获该错误并显示相应的消息。 我的代码如下所示,但是我无法捕获失败的Ajax请求。 我发现,当Ajax请求失败时,“ Error in Ajax”将永远不会执行。 如何处理Ajax错误并在失败时显示适当的消息? 问题答案: 从jQuery 1.5开始,您可以使用延迟对象机制: 另一种方法是使用:

  • 我希望看到一条消息说“xyz行的语法错误”,“预期的。但相反,对于每一个由我丢失的逗号引起的后续错误,在xyz处都有一个获得一百个不可行的替代方案的列表。 有没有一种方法可以得到一个错误,这是由缺少逗号造成的?如果它会抱怨意外的var2令牌,也是完全可以的。

  • 问题内容: jQuery的AJAX错误函数具有以下参数: 跨浏览器获取响应主体的最佳方法是什么? 这行得通吗(可靠地在所有浏览器中)? 问题答案: 有一个隐藏的函数可以从XHR等距提取数据: 如果您将其作为第二个参数传递,它将把响应视为JSON字符串。 请注意,由于没有响应(例如网络问题),您可能会收到错误消息。确保您也涵盖了这种情况。另外,我相信(不确定)如果服务器返回或状态,则jQuery会调