api - Heroku 服务器没有从本地文件中提取最新信息?
问题描述
我有一个简单的快递服务器并将其上传到 Heroku。服务器从中读取日期时间date.json
并显示它。一个名为的文件update.js
将当前日期时间写入一个名为date.js
. 我正在使用 Heroku Scheduler每 10 分钟调用一次node update.js
以更新文件。date.json
本质上,API 应该显示每 10 分钟更新一次的最新日期时间字符串。
当我访问 API 时……日期永远不会更新。我还尝试node update.js && npm start
在每次更新时重新启动服务器。它在本地运行时有效。知道为什么上传到 Heroku 上的日期时间字符串永远不会改变吗?
服务器.js
// importing
const express = require('express');
const cors = require('cors');
const fs = require('fs');
// app config
const app = express();
const port = process.env.PORT || 9000;
// middleware
app.use(cors());
app.use(express.json());
// api routes
// ------- BEGIN RELEVANT PART OF CODE -------
app.get('/', (req, res) => {
const json = fs.readFileSync('./date.json');
latestDate = JSON.parse(json);
res.status(200).send(latestDate);
});
// ------- END RELEVANT PART OF CODE -------
// listener
app.listen(port, () => console.log(`Listening on http://localhost:${port}`));
更新.js
const fs = require('fs');
const update = () => {
const dateObj = {Date: new Date().toISOString()}
fs.writeFileSync('./date.json',JSON.stringify(dateObj));
}
update();
日期.json
{"Date":"2021-03-08T01:56:15.714Z"}
解决方案
推荐阅读
- javascript - 有没有办法在不覆盖指定属性的情况下将道具传播到组件上?
- oracle - PLSQL Loop through query 查找所有记录
- python - 对结果进行平均计算的列条件计数
- ruby-on-rails - 如何从单个活动记录对象中获取列值
- c++ - 如何限制矩阵类只获取“X”“O”或“。”
- javascript - 如何在数据库 MYSQL 的下拉菜单中选择选项的输入中显示数据?
- java - Swagger / Openapi with openapi-generator 我们在哪里添加业务逻辑代码?
- esp8266 - 是否有用于测试在 Arduino IDE 上编写的代码的 esp8266 模拟器?
- vba - VBA 矩阵搜索
- c# - Magick.NET 如何使用 .ColorFuzz 作为图像比较的像素容差