Adobe Brackets を使用した Node.js サーバーの実行に問題があります。ライブ プレビュー (URL はhttp://localhost:SOMERANDOMPORT/path/to/file.html
) に入ったら、サーバーを起動します。http://localhost:3000/test
別のタブに直接入力すると、正しい JSON が表示されます。
次に、イベント関数を要素に追加しましたfile.html
。クリックすると、サーバーに AJAX 要求が行われ、応答を使用してその内部 HTML の一部が変更されます。ただし、ライブ プレビューでの要素のクリックは失敗し、代わりにエラー コールバックが呼び出されます。
どうすればこれを修正できますか? http://localhost:SOMERANDOMPORT/test
AJAX リクエストがではなくに送信されるという事実に関係しているとhttp://localhost:3000/test
思われますが、解決策が見つからないようです。
すべてがローカルで実行されます。以下は私のサーバーです:
var express = require('express');
var mysql = require('mysql');
var app = express();
app.get('/test', function(req, res){
var connection = mysql.createConnection(...);
connection.query("SELECT author FROM posts", function(err, results) {
if (err) {
console.log(err);
console.log('Error on retrieving data.');
res.send(err);
return;
}
console.log(results[results.length - 1]);
res.send(results[results.length - 1]); // return last row
});
connection.end();
});
app.listen(3000);
console.log('Listening on port ' + port);
そしてイベント関数:
function getAuthor() {
$.ajax({
type: 'GET',
url: '/test',,
success: function(data, status) {
$('.author').text('Authored by ' + data.author);
},
error: function(jqXHR, status, error) { // this always get called
$('.author').text('Something went wrong.');
}
});
}
助けていただければ幸いです。