axios 可以 GET 但不能 POST 到相同的 URL
Axios can GET but not POST to the same URL
- 我正在构建一个 React 应用程序
- 在一个组件中,我正在编写这个有效的 GET 请求:
- 在另一个组件中,我正在写这个 POST 请求:
- 然后 returns 这个 404 错误:
我不知道我的 GET 是如何工作的,但是当我两次请求同一个文件时,我的 POST returns 404:not 找到了?
更新:
我现在是 运行 一个 node.js 服务器,但它有点像科学怪人的怪物,因为这真的不是我了解的领域。有谁知道我做错了什么?
// Server setup from node.js website
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
// Trying to listen for data from React app to feed into JSON (broken)
var express = require("express");
var myParser = require("body-parser");
var app = express();
app.use(myParser.urlencoded({extended : true}));
app.post("/scene-setup.json", function(request, response) {
console.log(request.body); //This prints the JSON document received (if it is a JSON document)
});
app.listen(3001);
// Updating JSON file with "obj" (working)
var jsonfile = require('jsonfile')
var file = './scene-setup.json'
var obj = {name: 'JP'}
jsonfile.writeFile(file, obj, function (err) {
console.error(err)
})
Axios 用于发出 HTTP 请求。因此,您应该有一个可以处理这些请求的后端服务器 运行。我不确定您要保存的数据到底是什么。如果您需要访问该数据,应该将其保存在后端。
如果您只想在客户端保存一些数据,HTML5 filesystem API 可能是您想要查看的内容。它可以管理用户文件系统的有限沙盒部分中的一些数据。
- 我正在构建一个 React 应用程序
- 在一个组件中,我正在编写这个有效的 GET 请求:
- 在另一个组件中,我正在写这个 POST 请求:
- 然后 returns 这个 404 错误:
我不知道我的 GET 是如何工作的,但是当我两次请求同一个文件时,我的 POST returns 404:not 找到了?
更新:
我现在是 运行 一个 node.js 服务器,但它有点像科学怪人的怪物,因为这真的不是我了解的领域。有谁知道我做错了什么?
// Server setup from node.js website
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
// Trying to listen for data from React app to feed into JSON (broken)
var express = require("express");
var myParser = require("body-parser");
var app = express();
app.use(myParser.urlencoded({extended : true}));
app.post("/scene-setup.json", function(request, response) {
console.log(request.body); //This prints the JSON document received (if it is a JSON document)
});
app.listen(3001);
// Updating JSON file with "obj" (working)
var jsonfile = require('jsonfile')
var file = './scene-setup.json'
var obj = {name: 'JP'}
jsonfile.writeFile(file, obj, function (err) {
console.error(err)
})
Axios 用于发出 HTTP 请求。因此,您应该有一个可以处理这些请求的后端服务器 运行。我不确定您要保存的数据到底是什么。如果您需要访问该数据,应该将其保存在后端。
如果您只想在客户端保存一些数据,HTML5 filesystem API 可能是您想要查看的内容。它可以管理用户文件系统的有限沙盒部分中的一些数据。