前端传参给后台乱码(非中文乱码)紧急求助

前端

图片说明

后端

图片说明

浏览器
给的数据是userid=111 password=123456
浏览器显示结果为

图片说明

求解答~困扰hao'jiu'l

看你这数据格式这数据应该是用base64转码了,你把数据用base64解码看能解析出来不。

你把你的contentType不传试试,或者contentType传其他的几个值都试一下

是把用户名密码加密了,你是想做什么呢,拿到这个数据直接去后台校验就好了,后台存的肯定也是这个数据,不需要去解密了。数据库里的用户名密码肯定也是这样的,直接校验。如果你想知道原始字符,就需要解密,看看代码是根据什么加密的。

可以先试一下contentType去掉,dataType改成json,即:

$.ajax({
    url:"user_login",
    dataType: "json",
    type:"post",
    data:{
        userId:userid,
        password:password
    },
    success: function(data){
     //返回结果处理
    }
});

你这传递的是json格式的参数,不是html,这里不对!


之后最重要的是你应该dubug跟一下整个过程中这两个值的变化情况:
在$.ajax执行之前打印一下当前的userid和password的值是什么,看看这个时候这两个值有没有变成加密的情况,如果变了说明在你提交ajax之前有加密处理的步骤;如果没有变,跟一下后台部分看看有没有类似拦截器之类的步骤有给你传递的这两个参数有加密处理的过程。
从你的这个情况看应该是在中间执行的过程中有加密操作的步骤。
希望能帮到你!!