在Parse Server中,您应该在哪里放置快速路线?我发现如果我把它们直接放在index.js中它们才有用,但那不是最好的地方,是吗?
我把它放在我的cloud / main.js中:
=IIF(IsDate(Fields!fp_firstshifttimein.Value),
DateTime.Parse(iif(IsDate(Fields!fp_firstshifttimein.Value) ="1",
Fields!fp_firstshifttimein.Value,"01/01/1900")).addDays(8), nothing)
我的控制台输出显示"此文件肯定运行"在启动服务器时,但是当我尝试访问localhost:1337 / test时,它只是说"无法获取/测试"。如果我只放置app.get(' / test',...);在index.js中,它有效。我想这是因为我不允许创建另一个express()实例,也许有一种方法来获取在index.js中创建的实例?
答案 0 :(得分:3)
我意识到你提出的问题不同于我的回答所指出的问题。万一你实际上忘了app.listen
我会把它留在下面。
如果您要将路线导出到其他文件,则需要将app
对象从index.js
传递到路径文件。
我通常做的是三个抽象层次。首先,您有index.js
声明app
和express instances
。然后我有一个单独的文件,比如说routeDefinitions.js
(我通常称之为索引并在申请后命名起点)。
在routeDefinitions.js
内部,我使用app
中的index.js
实例声明路由,从而产生以下结果:
app.js
:
var express = require('express');
var app = express();
var routes = require('./routeDefinitions')(app);
和routeDefinitions.js
:
var test = require('./test');
module.exports = function(app) {
app.get('/test', test.working);
return app;
};
然后将每种类型的对象放在它自己的路径文件中(比如你有用户,苹果和汽车,那么每个对象都有自己的路径文件)。
test.js
:
module.exports.working = function(req, res) {
console.log("working?");
res.status(200).send('working?');
};
<小时/> 您需要致电
app.listen
启动服务器。请参阅Hello World example。
您看到This definitely runs
因为您确实正在处理您的脚本,但是您没有收听请求,因为您忘记启动快速服务器。