快递不发送回应阿贾克斯后或得到

我有一些前端代码,如下所示:

$.ajax({ url:target, data: zform.serialize(), dataTyp:'json', type:'POST', success:function(data, status, jqXHR) { $(".target", source).html(data.widget.url); source.find('.edit').hide() source.find('.saved').show(); }, error:function(jqXHR, textStatus, err) { alert(textStatus); }); 

这find我的表单,序列化,并将其发送到所需的URL的服务器。 这工作正常,并且node.js服务器接收它。

然后在节点的请求处理程序中:

 m.Target.find({where:{id:linkId, UserId:req.user.id}}).success(function(target){ target.updateAttributes({target:url}).success(function(target){ try{ var response={status:"updated", widget:{url:target.url} }; res.send(response); res.end(); console.log("sent"); }catch(err){ console.log(err); } }); }); 

variables进来很好,数据库通过sequelize更新就好了,成功的方法被调用。 但客户从来没有得到回应。 它只是处于未决状态。 我已经尝试做这既GET和POST,我已经尝试res.json,res.send和res.write。 没有任何工作,我很困惑。

我得到了它的工作,但我不知道这是什么原因造成的。

  1. 我在dataType:json的原始请求中有一个错字

  2. 改变了我的回应方式:

  res.status(201).type('JSON'); res.write(JSON.stringify({widget:{ url: target.dataValues.target, startLvl: target.dataValues.startLvl, endLvl: target.dataValues.endLvl, id: target.dataValues.id } })); res.end( 

);