我正在尝试开发一个允许对文件数据进行 POST 请求的 API,但 POST 请求只能使用 curl curl -X POST --data file= mouse.fa "http://localhost:3000/api/data?file=mouse.fa"
运行。当我在浏览器中尝试 POST 请求时,出现 GET 错误 Cannot GET /api/data
。除了 curl 之外,您能否就如何让 POST 请求在浏览器中工作向我提出建议。
router.js
const fs = require('fs');
const express = require('express');
const bodyParser = require('body-parser');
fileParser = require("./fileParser")
router.use('./fileParser', fileParser.parse);
// middleware
router.use(function (req, res, next) {
console.log('Received request');
next();
});
router.post('/data', function (req, res) {
//Check file is valid
if (!req.body.file.toString().endsWith('.fa')) {
res.status(400).json({ message: "Bad Request" });
} else {
fileParser.parse(`./${req.body.file.toString()}`);
res.json({ message: "File parsed and data submitted.", location: "/data/" });
}
});
server.js
const express = require('express');
// create server
const app = express();
const port = 3000;
app.listen(port, function () {
console.log(`Server running at ${port}`)
});
// import router
const router = require('./router');
app.use('/api', router)