Я работал с машинописью на Angular и сейчас пытаюсь использовать ее для выполнения сценариев на стороне сервера с Node и Express. Я успешно настроил базовые параметры машинописи c следующим образом:
tsconfig. json
{
"compilerOptions": {
"module": "commonjs",
"esModuleInterop": true,
"target": "es6",
"noImplicitAny": true,
"moduleResolution": "node",
"sourceMap": true,
"outDir": "dist",
"baseUrl": ".",
"paths": {
"*": [
"node_modules/*"
]
}
},
"include": [
"src/**/*"
]
}
tslint. json
{
"defaultSeverity": "error",
"extends": [
"tslint:recommended"
],
"jsRules": {},
"rules": {
"trailing-comma": [ false ]
},
"rulesDirectory": []
}
Я также настроил сервер basi c, как показано ниже:
app.ts
import express from 'express';
import { userModel } from './UserModel';
const app = express();
app.use(express.json());
app.get('/', (req, res) =>{res.send('Hello from the server');});
app.post('/fetch', (req, res)=>{
console.log(typeof userModel);
console.log("Body=> ", req.body); // logs undefined
userModel.setUsername(req.body.u);
userModel.setPassword(req.body.p);
console.log("Usrname=> ", userModel.getUserName);
console.log("Password=> ", userModel.getPassword);
});
app.listen(3000, ()=>{
console.log('running on port 3000');
})
Запрос basi c отлично работает и возвращает Hello from the server
, когда я нажму http://localhost:3000/
с почтальоном. Однако, когда я пытаюсь отправить почтовый запрос, выписка console.log("Body=> ", req.body);
logs undefined
. Я искал решение, но большинство из них для Angular
. Я также видел следующую запись о stackoverflow: http Запрос на публикацию с Typescript , но в ответе используются обещания.
Существует ли более простой способ обслуживания запросов на запись с машинописью на узле-сервере?