weixin_33681778 2014-10-02 18:36 采纳率: 0%
浏览 32

jQuery Ajax JSON错误解析

I have a JSON object that I was trying to send to a node server. I use this:


Generic function to make a request:

function makeTheRequest(method, url, data, dataType, onSuccess, onError, onComplete)
{
    jQuery.ajax({
        method: method,//metodo|verbo con el que procesamos la peticion
        url: server + '/' + url,//url a la que hacemos la petición
        data: data,//datos del formulario
        dataType: dataType,
        success: onSuccess,
        error: onError,
        complete: onComplete
    });
}

Concrete function where I call the generic:

jQuery('#sign_log_button').on('click', function()
{

    var user = {};
    var fields = true;
    jQuery('.data').each(function(index)
    {
        if(jQuery(this).val())
            user[jQuery(this).attr('id')]=jQuery(this).val();
        else fields = false;
    });
    console.log(JSON.stringify(user));
    if(fields)
    {
        makeTheRequest('POST', 'users', "user=" + user , 'json', onSuccessSignLog, onErrorSignLog);
    }
    else alert("Please, check all fields.");
});

The problem I am finding is the same that many people has (I could read this problem on this forum, but no one answer is fixing me the problem... maybe I am not understanding well them).

Finally, I find a solution... and I think is great (becouse can support json and text request dataType on the server), but I would know how to do the json ajax request with jquery.


My Solution

(maybe is not the best... but it is mine, and I like it ;) ) Change the line where make the calling to the generic function for this other line:

makeTheRequest('POST', 'users', "user=" + JSON.stringify(user) , 'text', onSuccessSignLog, onErrorSignLog);

And on the server side this:

router.post('/', function(req, res)
{
    user = req.body.user;
    if(typeof user === "string") user = JSON.parse(user);
    //MORE AND MORE
    res.send(user.user_name);   
});

How I said, I think it is not bad becouse the server is more flexible, but I had been a long time trying to make a json ajax request... and I want to find the solution.

PS: My english is not the best... excuse me!!

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
    • ¥15 关于arduino编程toCharArray()函数的使用
    • ¥100 vc++混合CEF采用CLR方式编译报错
    • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
    • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
    • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
    • ¥50 如何openEuler 22.03上安装配置drbd
    • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
    • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
    • ¥15 Windows11, backspace, enter, space键失灵