我是初学者node.js 当我已经检查服务器打开但 当我尝试打开index.html时没有任何反应 我使目录只是什么也没有反应为什么会发生这种情况? DBtestApp> ajax_test> www> index.html 我将我的nodejs设置保存在DBtestApp中 但是当我访问端口3000 告诉我 欢迎来到Express' 我该如何检查我的index.html
我访问http://localhost:3000/时已经检查服务器是否打开 该页面向我显示“表示欢迎表达”,但我不明白为什么index.html无法打开
这是我的index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf8">
<title>Document</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$('#ButtonRequest').click(function(){
$.ajax({
url: 'http://localhost:3000/Echo',
data:{
myData: "Hello",
},
dataType: 'jsonp',
success: function(data){
console.log(data);
$('.Response').text('answer from server : '+data.result);
},
error: function(){
$('.Response').text('error occured');
}
});
});
});
</script>
</head>
<body>
<div class="Response"></div>
<input type="button" id="ButtonRequest" value="AJAX start" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</body>
</html>
这是我设置的nodejs ajax_srv_test.js
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var path = require('path');
// Path setting
app.use(express.static(path.join(__dirname, 'ajax_test', 'www')));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
// service main page return
app.get('/', function(req, res){
res.sendFile(path.join(__dirname, 'ajax_test', 'www', 'index.html'));
});
// Echo service
app.get('/Echo', function(req, res){
var callbackName = req.query.callback;
var myData = req.query.myData;
var ResObj = {};
ResObj.result = myData;
var server = app.listen(3000, function(){
console.log("Express server has started on port 3000");
});
res.header('Content-type','application/json');
res.header('Charset','utf8');
res.send(callbackName + '('+JSON.stringify(ResObj)+');');
});
当我在终端
中写信时node ajax_srv_test
没有反应
答案 0 :(得分:1)
用于启动服务器的代码位于/Echo
路由之内,这就是从未执行它的原因,导致未启动HTTP服务器。请将/Echo
路由的代码更改为以下内容:
// Echo service
app.get('/Echo', function(req, res){
var callbackName = req.query.callback;
var myData = req.query.myData;
var ResObj = {};
ResObj.result = myData;
res.header('Content-type','application/json');
res.header('Charset','utf8');
res.send(callbackName + '('+JSON.stringify(ResObj)+');');
});
var server = app.listen(3000, function(){
console.log("Express server has started on port 3000");
});