0
我想從Express.js發回JSON到客戶端,但我不能讓它工作。Epress.js和AJAX,從服務器發送JSON到客戶端
路由/ editor.js內
exports.save = function(req, res){
fs.readFile(__dirname + "/../public/index.html", function (err, data) {
if (data == oldhash) {
res.json({ r: 'no' })
}
else {
res.json({ r: 'yes'})
}
});
});
公共/ JavaScript的/ test.js
$(".save").click(function(event) {
event.preventDefault();
$.ajax({
url: 'http://localhost:3000/save',
data: r,
type: 'GET',
success: function(r) {
if(r == 'yes') {
$('#echoResult').append('<p>yes</p>');
}
else {
$('#echoResult').append('<p>no</p>');
}
}
});
});
,然後相應地是來自服務器的響應,附加的權利HTML。
我在這裏錯過了什麼?我看到的所有AJAX示例都沒有太多幫助。
任何建議將更受歡迎。
編輯
我得到這個錯誤在客戶端 - >未捕獲的ReferenceError:R不是定義
定義「無法使其工作」。另外,你的'fs.readFile'代碼缺少錯誤處理,所以如果發生錯誤,你不會知道它。 – robertklep 2013-04-11 09:38:26
你是對的,我忘了提及這個錯誤。檢查更新的帖子。 – giokokos 2013-04-11 09:45:54
'r'沒有被定義似乎沒有道理。嘗試在客戶端代碼中設置一個'error'處理程序。 – robertklep 2013-04-11 09:59:21