Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Express/nodejs中参数化路由url后添加静态文件_Javascript_Mysql_Node.js_Express - Fatal编程技术网

Javascript 在Express/nodejs中参数化路由url后添加静态文件

Javascript 在Express/nodejs中参数化路由url后添加静态文件,javascript,mysql,node.js,express,Javascript,Mysql,Node.js,Express,我试图根据/details之后包含的两个参数获取详细信息。我传递的参数正在url中获取。但是我的静态文件夹/others添加在/details/id/others/filenames.js或css之后。因此,我没有完全获得页面视图。 我试图在html页面中打印传递的url数据。但他们也没有表现出来。我的代码中没有问题,因为我是nodejs的新手 这是app.js文件 var express=require('express'); var path=require('path'); var fa

我试图根据/details之后包含的两个参数获取详细信息。我传递的参数正在url中获取。但是我的静态文件夹/others添加在/details/id/others/filenames.js或css之后。因此,我没有完全获得页面视图。 我试图在html页面中打印传递的url数据。但他们也没有表现出来。我的代码中没有问题,因为我是nodejs的新手

这是app.js文件

var express=require('express');
var path=require('path');
var favicon=要求('serve-favicon');
var记录器=需要('morgan');
var cookieParser=require('cookie-parser');
var bodyParser=require('body-parser');
var connection=require('express-myconnection');
var mysql=require('mysql');
变量路由=要求('./路由/索引');
var search=require(“./routes/search”);
var urlencodedParser=bodyParser.urlencoded({extended:false})
var-app=express();
//查看引擎设置
app.set('views',path.join('views');
应用程序集(“查看引擎”、“ejs”);
app.use('/others',express.static('others');
//将您的favicon置于/公共位置后取消注释
//应用程序使用(favicon(u dirname+'/public/favicon.ico');
应用程序使用(记录器(“开发”);
use(bodyParser.json());
use(bodyParser.urlencoded({extended:false}));
使用(cookieParser());
app.use(require('stylus')。中间件(path.join('public'));
app.use(express.static(path.join(uu dirname,'public'));
//app.use(express.json());//支持JSON编码的实体
//app.use(express.urlencoded());
应用程序使用(
连接(mysql{
主机:“localhost”,
用户:'根',
密码:“”,
端口:3306,//端口mysql
数据库:“存档”
},“请求”)
);
//index.js中页面的路由
app.get('/',routes.index);
app.get('/details',routes.details);
app.get('/list',routes.list);
//张贴表格
app.post('/list',urlencodedParser,函数(req,res){
//控制台日志(请求主体);
//res.render('list',{data:req.body});
请求getConnection(功能(错误、错误){
con.query('从arc_book中选择*,其中标题如“%”+req.body.title+'%”或isbn如“%”+req.body.title+'%”或描述如“%”+req.body.title+'%”按标题asc排序',函数(错误,行){
如果(错误)
日志(“解决方案中的错误:%s”,错误);
//否则
//console.log(行);
res.render('list',{data:rows});
});
});
});
app.get('/details/:book_id/:upload_by',函数(req,res){
请求getConnection(功能(错误、错误){
con.query(“从arc_book b、arc_user u中选择*,其中b.upload_by=u.id和u.id=”“+req.params.upload_by+”,b.id=“+req.params.book_id+”,函数(错误,行){
如果(错误)
返回console.log(“解决方案中的错误:%s”,err);
否则{
//console.log(行);
res.render('details',{data:rows});
}
});
});
});
//捕获404并转发到错误处理程序
应用程序使用(功能(请求、恢复、下一步){
var err=新错误(“未找到”);
err.status=404;
下一个(错误);
});
//错误处理程序
//开发错误处理程序
//将打印stacktrace
if(app.get('env')='development'){
应用程序使用(功能(错误、请求、恢复、下一步){
资源状态(资源状态| | 500);
res.render('错误'{
message:err.message,
错误:错误
});
});
}
//生产错误处理程序
//没有堆栈跟踪泄漏给用户
应用程序使用(功能(错误、请求、恢复、下一步){
资源状态(资源状态| | 500);
res.render('错误'{
message:err.message,
错误:{}
});
});

module.exports=app您的问题是由html模板中包含“others/js/dataTables.bootstrap.js”的地方引起的,您可能正在指定一个相对路径,正如您在这里看到的那样。试试“/others/js/dataTables.bootstrap.js”,谢谢。我的URL问题解决了。但是为什么我的数据对象不显示数据呢?正如我在我的详细信息html文件中所写的那样。在控制台中,我获取数据数组@罗伯塔问另一个问题,清楚地解释你的问题。