我向我的Express-powered node.js服务器发送了一个jQuery ajax请求,该服务器成功处理并响应。但是,响应会触发ajax error
回调而不是success
回调(尽管状态代码为“200”)。那不是我所期待的。 ; o)这是我的代码:
client.js:
$.ajax( {
url: "/httpUpload",
type: "POST",
processData: false,
contentType: false,
dataType : "json",
data: formData,
success: function() {
// Do stuff
},
error: function( error ) {
console.error( "HttpUpload failed: " + error.responseText );
}
} );
server.js:
var express = require( "express" );
var app = express();
var server = require( "http" ).Server( app );
var multipart = require('connect-multiparty');
app.use( express.static( "public" ) );
app.use( multipart() );
app.post( "/httpUpload", function( req, res ) {
console.log( "Received post request");
res.send( "Done!" );
}
我在ajax error
回调中获得的error
对象如下所示:
{readyState: 4, responseText: "Done!", status: 200, statusText: "OK"}
知道为什么它会触发error
回调吗?
答案 0 :(得分:3)
哦,傻我。这是我在ajax调用中遇到的datatype
。我没有回json,所以它出错了。当我删除它时,一切都有效。