にルートのあいまいさを避けるために、どのように私は三つのファイルserver.js, views.js
とserver.js
でaccess.js
Express.js
私が入れているを持っているすべてのdependencies
と私はのようなコードを持っているviews.js
で
app.post('/services/getallversions', (req, res) => {
...
// code to handle the req and send response
})
のようないくつかのroutes
私はコードのように、を持ってaccess.js
で以下、
module.exports = function(app, db, bodyParser, rules, constants, query) {
app.post('/services/user/:user/:type', (req, res) => {
// user can be 'abcd'
// type can be addview, deleteview etc.
...
// do processing for the req and send res
})
}
module.exports = function(app, db, bodyParser, rules, constants, query) {
app.post('/services/user/:user/:type', (req, res) => {
// user can be 'abcd'
// type can be addaccess, removeaccess etc.
...
// do processing for the req and send res
})
}
はserver.js
ファイルでは、私は
var access = require('./access')(app, db, bodyParser, rules, constants, query)
var views = require('./views')(app, db, bodyParser, rules, constants, query)
私は/services/user/abcd/addaccess
私views.js
ファイルのコードを使用してPOST
しよう
access.js and views.js
が必要です。
constants, query, rules
は
server.js
で既に使用されている
.js
ファイルです。
require('./filename')
を使用しています。
と同じURL構造が原因であいまいさが発生することをご理解ください。私はExpress 4とNode JS 6を使用しています。access.js
とviews.js
のコードをserver.js
から分離して別々のファイルに入れて、上記の方法でそれらを必要とします。 views.js
とaccess.js
は私によって作成されています。彼らはJavascriptフレームワークなんかそんなものじゃない。 view.js
で
私はまた、次のコード
var router = require('express').Router()
router.post('/services/user/:user/:type', (req,res)=>{})
を試してみましたが、しかし、同じ問題が存在します。それを達成する方法はありますか?
私はあなたがここで何を求めているかを理解するのに苦労しています。どのように 'views.js'や' access.js'コードを実行するかをサーバーが正確に知っていますか? URLは*全く同じ*です。あなたはこの問題を認識していますが、単純で簡単な別のURLを使用せずに解決することは不可能です。あなたが 'views.js' _after_他のファイルをインクルードすると' app.post() 'コールが' access.js'のものを上書きします。 –