zoukankan      html  css  js  c++  java
  • jQuery发送Ajax请求以及出现的问题

    普通jQuery的Ajax请求代码如下:

    $.ajax({
      type: 'POST',
      url: "http://xxx/yyy/zzz/sendVerifyCode",
      data:{
        phoneNo:$(".tel").val()
      },
      success: function(data){
        $.toast("发送成功", "text")
      },
      error: function(){
        $.toast("发送失败", "text")
      }
    })

    一、如果POST接口返回500,请求的参数如下图,图中的传参方式为Form data:

     

    1.需要加上contentType:'application/json',传参方式会变为Request Payload(装载量)。

    2.需要加上JSON.stringify封装对象,这个问题在传递一个多键值对的对象会出现,如果是只有一个key-value的键值对则可加可不加。

    代码示例如下:

     1 $.ajax({
     2   type: 'POST',
     3   url: "http://xxx/yyy/zzz/register",
     4   data: JSON.stringify({
     5     username:$(".tel").val(),
     6     smsVerifyCode:$('.captchaVal').val(),
     7     realName:$('.username').val(),
     8     email:$('.email').val(),
     9     password:$(".pwd").val(),
    10   }),
    11   contentType:'application/json',
    12   success: function(data){
    13       if(data.code===200){
    14         $.toast("注册成功", "text")
    15         setTimeout(function () {
    16             location.href = "login.html"
    17         }, 500);
    18       }else {
    19           $.toast(data.message, "text")
    20       }
    21   },
    22   error: function(){
    23     $.toast("注册失败", "text")
    24   },
    25   dataType: "json",
    26 })

    然后请求变为了对象格式。

    HTTP两种传参方式的区别:

    Form Data:当POST请求的请求头里设置Content-Type: application/x-www-form-urlencoded(默认),参数在请求体以标准的Form Data的形式提交,以&符号拼接,参数格式为key=value&key=value&key=value。

    Request Payload:当使用AJAX原生POST请求,请求头里设置Content-Type:application/json,请求的参数会显示在Request Payload中,参数格式为JSON格式:{“key”:”value”,”key”:”value”…},这种方式可读性会更好。

    二、使用Ajax发送请求时返回Canceled,未请求到接口,则需加上async:false即可解决。

  • 相关阅读:
    【转】Ext.data.Store加载及显示数据
    WPF中通过MVVM模式来关闭View
    深入浅出JavaScript (六)分析DOM模型
    深入浅出 JQuery (一) 浅析JQuery
    深入浅出JavaScript (五) 详解Document.write()方法
    深入浅出JavaScript (四)DHTML
    深入浅出jQuery (五) 如何自定义UIDialog?
    BS部分整体学习
    深入浅出JQuery (三) 图片预览效果
    深入浅出AJAX (一) 轻松入门
  • 原文地址:https://www.cnblogs.com/luoyihao/p/11235134.html
Copyright © 2011-2022 走看看