我有一个基于 NodeJS 和 Express 的应用程序。每次我试图获取响应时,我都会得到Content-Type: "application/json; charset=utf-8"
. 我无法在前端解析它,因为我期待 header 的响应Content-Type: "application/json"
。
我也尝试过res.setHeader, res.set
方法,但似乎没有什么帮助。任何建议表示赞赏。
以下是我的快速代码:
const app = express();
configureMongoClient();
app.use(logger("dev"));
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(cookieParser());
app.options('*', cors())
app.use("/api-docs", swaggerUi.serve, swaggerUi.setup(swaggerDocument));
app.use((req, res, next) => {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET, PUT, POST');
res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept, X_BPI_CONTEXT');
res.header("Content-Type", "application/json")
next();
});
app.use("/users", usersRouter);
app.use(express.static(path.join(__dirname, "public")));
Run Code Online (Sandbox Code Playgroud)
我的前端调用如下:
fetch(uri, {
method: "POST",
headers: {
Content-Type: "application/json"
},
body: JSON.stringify(requestData),
})
.then((response) => {
debugger;
return …
Run Code Online (Sandbox Code Playgroud) 我有一个基于 nextjs 的项目。奇怪的是,HMR 在我的项目中无法正常工作。每次我进行更改时,我都必须重新运行该过程。我附上了我的下一个配置和 package.json 的详细信息:
下一个.配置:
const withSass = require("@zeit/next-sass");
const withCSS = require("@zeit/next-css");
module.exports = withCSS(
withSass({
webpack(config, options) {
config.module.rules.push({
test: /\.(eot|woff|woff2|ttf|svg|png|jpg|gif)$/,
use: {
loader: "url-loader",
options: {
limit: 100000,
},
},
});
return config;
}
})
);
Run Code Online (Sandbox Code Playgroud)
包.json
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"export": "next export"
},
"dependencies": {
"@zeit/next-css": "^1.0.1",
"@zeit/next-sass": "^1.0.1",
"antd": "^3.26.8",
"chartjs": "^0.3.24",
"classnames": "^2.2.6",
"draft-js": "^0.11.4",
"isomorphic-unfetch": "^3.0.0",
"moment": "^2.24.0",
"next": "^9.2.1",
"node-sass": "^4.13.1",
"react": …
Run Code Online (Sandbox Code Playgroud)