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 安卓adb backup备份应用数据失败
    • ¥15 eclipse运行项目时遇到的问题
    • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
    • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
    • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
    • ¥50 成都蓉城足球俱乐部小程序抢票
    • ¥15 yolov7训练自己的数据集
    • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
    • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
    • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)