前提・実現したいこと
Qiita記事を参考にしてExpressでjsonAPIサーバーを構築しています。
以下の「さらに分ける」の項目で詰まっています。
サルでも分かるExpressでのjsonAPIサーバーの作り方
ディレクトリ階層
. ├── app.js ├── models └── routes └── v1 ├── article.js ├── index.js └── user.js
routes/v1/index.jsの中でariticle, userに対するルーティングを記述しています。
正しく記述されている場合、http://localhost:3000/api/v1/article/testまたはhttp://localhost:3000/api/v1/user/testと検索すれば対応するファイルが表示されるはずなのですが,
表示されません。
chrome
1 2Cannot GET /api/v1/article/test 3Cannot GET /api/v1/user/test 4
該当のソースコード
javascript
1// /routes/v1/index.js------------------- 2 3var express = require('express'); 4// ルーティングするで 5var router = express.Router(); 6 7// routerにルーティングの動作を書いてく 8router.get('/',function(req,res){ 9 res.json({ 10 message:"Hello,world" 11 }); 12}); 13 14router.get('/article', require('./article.js')); 15router.get('/user', require('./user.js')); 16 17//routerをモジュールとして扱う準備 18module.exports = router; 19 20// /app/app.js------------------- 21 22 23var express = require('express'); 24var app = express(); 25var bodyParser = require('body-parser'); 26 27app.use(express.urlencoded({ extended: true })); 28app.use(express.json()); 29 30var port = process.env.PORT || 3000; 31 32var router = require('./routes/v1/'); 33app.use('/api/v1/', router); 34 35//サーバ起動 36app.listen(port); 37console.log('listen on port ' + port); 38 39// /app/routes/v1/article.js 40 41var express = require('express'); 42var router = express.Router(); 43 44 45router.get('/test', function(req, res) { 46 res.json({ 47 message: 'this is article api' 48 }); 49}); 50 51module.exports = router; 52 53// /app/routes/v1/user.js 54var express = require('express'); 55var router = express.Router(); 56 57 58router.get('/test', function (req, res) { 59 res.json({ 60 message:"This is user api" 61 }); 62}); 63 64 65module.exports = router; 66
何か質問または追加情報が必要な場合、何なりとお申し付けください。
回答1件
あなたの回答
tips
プレビュー