我为我的路线添加了以下代码:
public ActionResult Index(string progcd, string docrecdt)
{
if (docrecdt == "docrecdt")
{
return View(db.vwtest21.Where(x => x.DOC_REC_DT1 == docrecdt).ToList());
}
else if (progcd == "progcd")
{
return View(db.vwtest21.Where(x => x.PROG_CD == progcd).ToList());
}
else
{
return View(db.vwtest21.Where(x => x.DOC_REC_DT1 == docrecdt && x.PROG_CD == progcd).ToList());
}
}
}
虽然这确实有助于我提供所有静态内容的目的,但我仍然不知道在哪里添加我将在处理函数中添加的其余逻辑,如果有的话。 但目录处理程序的存在不会让我有一个功能。所以我想知道在哪里添加这条路线的其余逻辑。
编辑: 我尝试添加插件电围栏:
server.route([
{ method: 'GET', path: '/{file*}',
config:{
handler: {
directory: {
path: 'public',
listing: true,
index: true
}
},
auth: { mode: 'try' },
plugins: { 'hapi-auth-cookie': { redirectTo: false } }
} } ]);
但这似乎也不起作用。
答案 0 :(得分:0)
const Path = require('path');
const Hapi = require('hapi');
const Inert = require('inert');
const server = new Hapi.Server({
connections: {
routes: {
files: {
relativeTo: Path.join(__dirname, 'public')
}
}
}
});
server.connection({ port: 3000 });
server.register(Inert, () => {});
server.route({
method: 'GET',
path: '/{param*}',
config: {
validate: {
query: {
id: require('joi').number()
}
},
handler: {
directory: {
path: '.',
redirectToSlash: true,
index: true
}
}
}
});
server.ext('onRequest', function(req, reply) {
for(var key in req.query){
if(key) {
//some database and session logic goes here
console.log(req.query);
}
}
reply.continue();
});
server.start((err) => {
if (err) {
throw err;
}
console.log('Server running at:', server.info.uri);
});