Hbuilder app开发,使用mui.ajax和服务器交互,后台获取不到值,显示null的解决方法

先上一个能用的js代码:

function login() {
    var uname=document.getElementById("username").value.trim();
    var pwd=document.getElementById("password").value.trim();
    mui.toast("0 "+uname+" "+pwd);
    
    mui.ajax(
        'http://192.168.63.2:8080/ServletTest/servlet/AjaxTest',{
        data: {
            uname:uname,
            pwd:pwd
        }, 
        dataType: 'text',
        type: 'post',
        timeout: 10000,
        headers: {
            'Content-Type': 'application/x-www-form-urlencoded'
        }, 
        success: function(data) {
            mui.toast("success "+data);
        },
        error: function(xhr, type, errorThrown) {
            mui.toast("error "+type);
            console.log(xhr,type,errorThrown);
        }
    });
}

后台获取不到值的解决方案:

1、保证前台能获取到输入框的值。

2、url,data的key-value书写正确。

3、注意HTTP请求的Header,headers类型:

默认:application/x-www-form-urlencoded

上传文件时:multipart/form-data

data是序列化后的json字符串:application/json

发送数据是xml格式:text/xml

搜索:四种常见的 POST 提交数据方式,可以查看这四种方式的详细说明。