当前位置: 首页 > 面试题库 >

$ .post与$ .ajax

施俊哲
2023-03-14
问题内容

我正在尝试使用$ .post方法调用Web服务,我已经使用$ .ajax方法使它工作了:

$.ajax({
    type: "POST",
    url: "StandardBag.aspx/RemoveProductFromStandardBag",
    data: "{'standardBagProductId': '" + standardBagProductId.trim() + "' }",
    success: function(){
                 $((".reload")).click();
             },
    dataType: "json",
    contentType: "application/json"
});

但是,当我将相同的方法移到$ .post方法中时,它将无法工作:

$.post("StandardBag.aspx/RemoveProductFromStandardBag",
    "{'standardBagProductId': '" + standardBagProductId.trim() + "' }",
    function () { $((".reload")).click(); },
    "json"
);

我想念什么?


问题答案:

它不起作用,因为在您的$.post方法中,您无法将请求的内容类型设置为application/json。因此,不可能使用调用ASP.NET
PageMethod,$.post因为ASP.NET PageMethod需要JSON请求。您将不得不使用$.ajax

我将只修改data,以确保它已正确进行JSON编码:

$.ajax({
    type: "POST",
    url: "StandardBag.aspx/RemoveProductFromStandardBag",
    data: JSON.stringify({ standardBagProductId: standardBagProductId.trim() }),
    success: function() {
        $(".reload").click();
    },
    dataType: "json",
    contentType: "application/json"
});


 类似资料:
  • 问题内容: 既然大多数现代浏览器都支持AJAX和客户端请求,而无需执行POST,那么POST(表单发布)的作用是什么? 在某些情况下或一般规则下,始终将POST优先于XmlHttpRequest吗? POST所做的只是将可变键值对放在服务器头内部。我能想到的POST的优点是大量的数据和移动浏览器。还有很多我想念的吗? 注意,我知道您可以通过AJAX调用执行POST,我主要是在谈论标签 问题答案:

  • 问题内容: 为什么AJAX中存在GET和POST请求,因为它无论如何都不会影响页面URL?通过将敏感数据传递到AJAX中的GET上,有什么区别呢? 问题答案: 您应该根据Web服务的要求使用正确的HTTP动词。 处理 Collection URI时,例如: GET :列出集合的成员,并带有其成员URI以便进一步导航。例如,列出所有待售汽车。 PUT :定义为“将整个集合替换为另一个集合”。 POS

  • 问题内容: 有人称我的Snipplr提交内容之一为“废话”,因为我使用的不是 检查请求方法对我来说似乎更正确,因为那是我真正想要做的。两者之间在操作上有区别吗?还是仅仅是代码清晰性问题? 问题答案: 好吧,他们确实没有做同样的事情。 包含请求方法(惊奇)。 包含任何帖子数据。 POST请求可能不包含POST数据。 我检查了请求方法—实际上,我从未想过要测试阵列。不过,我检查了必填字段。因此,空的发

  • 问题内容: 我在使用OAuth编写的应用程序中使用了许多HTTP请求。目前,我以相同的方式发送GET和POST请求: 这工作正常。我成功地发布和获取。但是,我担心我没有正确执行POST。我需要在上面的代码中包含以下if语句吗? 如果是这样,为什么?有什么不同?我将不胜感激任何反馈。 谢谢! 问题答案: 内容类型必须与的 实际 格式匹配。仅当内容类型实际经过url编码时,才需要内容类型。例如,您对P

  • 问题内容: 对于我的Web应用程序(PHP / MYSQL),我显示了一个项目列表,并在每行显示一个链接以删除该项目。现在,链接是 如果我想改用POST …我该怎么做(这是一个动态生成的列表)?我可以不使用表格发送POST数据吗? 或者,对于每个项目,我都要做: 并设置提交按钮的样式使其看起来像原始链接? 我不熟悉php CURL或REST,它们会帮助解决这个问题吗? 问题答案: 通常,让GET请

  • 我是个新手。js和我无法获得一个简单的POST请求来工作。我使用的是angular版本1.4。8.我的请求从未发送到服务器。相反,客户端似乎在发出请求之前出错了。我看不出我做错了什么,尽管我已经阅读了这里的文档:https://docs.angularjs.org/api/ng/service/$http#post。以下是我的相关错误信息(使用下面的代码示例生成): {“数据”:null,“状态”