Tengo este punto final en mi servidor express:
app.post('/users', express.json(), async (request, response, next) => { try { console.log(`${request.method} ${request.url} was called.`); let user: User = request.body; let sessionId: string = request.query.sessionId as string; let captcha: string = request.query.captcha as string; let errors: string[] = await UserStore.CreateUser(elastic, smtp, user, sessionId, captcha); response.status(errors.length <= 0 ? 201 : 400).send(errors); } catch (error) { next(error); } }); Además, esta es mi clase User :
export class User { public Username: string; public Password: string; public Email: string; public EmailVerified: boolean; public Country: string; public State: string; public City: string; public Gender: string; public BirthdayTicks: number; } ¿Existe una forma estándar en Express o TypeScript para analizar y generar solo un conjunto de propiedades en la lista blanca para una nueva clase de User del cuerpo JSON, o tengo que crear uno new y configurar las propiedades manualmente?
El problema ahora es que request.body puede tener propiedades adicionales que no existen en el modelo de un User o propiedades como EmailVerified , que no quiero que el usuario pueda establecer por sí mismo. Si estos van al servidor elástico, se indexarán.