[英]how could i use require() to read a local json file by just adding the local project json file path?
這就是我設法能夠讀取json文件的方式
post.js 文件
const PATH = require('/Users/jorgesisco/Dropbox/Programming_Practice/Web_Development/PWJ/Module-8/Blog/pwj-module-8-my-blog-api/exercise/data.json');
class Post {
get() {
// get posts
}
getIndividualBlog() {
// get one blog post
}
addNewPost() {
// add new post
}
readData() {
return PATH;
}
}
module.exports = Post;
現在在 app.js 中,我調用了該函數,並且可以在 postman 中看到 json 文件。
// 1st import express
const express = require('express');
const app = express();
const Post = require('./api/models/posts');
const postsData = new Post();
const posts = [
{
id: '1581461442206',
title: 'This is a New Blog Post',
content: 'This is the content! ',
post_image: 'uploads/post-image-1581461442199.jpg',
added_date: '1581461442206',
},
];
// const result = posts.flatMap(Object.values);
app.get('/api/posts', (req, res) => {
res.status(200).send(postsData.readData());//here I call the function to see json file in postman
});
app.listen(3000, () => console.log('listening on http://localhost:3000'));
我認為我不應該為 json 文件使用整個文件路徑,但是當我只使用 ./data.json 之類的東西時會發生錯誤,因為它找不到 json 文件。
要從同一目錄訪問文件,您需要傳遞'./'
示例: require('./data.json');
用於從當前目錄'../'
一個目錄訪問文件示例: require('../data.json');
用於訪問不同文件夾中'../../foldername/data.json'
兩個目錄中的文件'../../foldername/data.json'
示例: require('../../dataFolder/data.json');
文件路徑引用自您運行主代碼的目錄 (app.js)
main_code/datadir
。 所以,現在看起來是這樣的——-- maincode
-- datadir
-- data.json
-- posts.js
-- app.js
require('./datadir/data.json')
(假設datadir/
與您的app.js
代碼在同一路徑/級別)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.