Express 如何在没有关系嵌套对象的情况下发布并获取web服务

Express 如何在没有关系嵌套对象的情况下发布并获取web服务,express,mongoose,Express,Mongoose,这是我的模式“客户端”: const mongoose=require(“mongoose”); const{Schema}=mongoose; const clientSchema=新架构({ 名称:String, 电子邮件:String, 崔:弦, 电话号码:, 地址:{ 街道:弦, 街道号码:号码, 编号:String, 单位:数字 } }); 模型(“客户机”,客户模式); 这是我的帖子,进入客户端控制器: app.get(“/api/clients”),异步(req,res)=>{

这是我的模式“客户端”:

const mongoose=require(“mongoose”);
const{Schema}=mongoose;
const clientSchema=新架构({
名称:String,
电子邮件:String,
崔:弦,
电话号码:,
地址:{
街道:弦,
街道号码:号码,
编号:String,
单位:数字
}
});
模型(“客户机”,客户模式);
这是我的帖子,进入客户端控制器:

app.get(“/api/clients”),异步(req,res)=>{
控制台信息(“获取客户”);
Client=wait Client.find().populate(客户机,{path:“address”},函数(err,客户机){
res.send(客户);
});
});
app.post(“/api/clients”),异步(req,res)=>{
const{name,email,cuil,phone,address}=req.body;
const client=新客户端({
名称
电子邮件,
cuil,
电话,
地址:新地址({
街道:{type:String},
街道编号:{type:Number},
屋顶编号:{type:String},
平面:{type:Number}
}),
类型:对象
});
试一试{
让newClient=等待client.save();
资源状态(201)。发送(新客户端);
}捕捉(错误){
如果(err.name==“MongoError”){
res.status(409.send)(错误消息);
}
资源状态(500)。发送(错误);
}
});

您需要在post路线中构建客户端,如下所示:

{
  name : "Name",
  email: "abc@def.net",
  cuil: "cuil",
  phone: 1234567,
  address: {
    street: "street name",
    streetNumber: 10,
    RoofNumber: "roof number",
    flat: 12
  }
}
const client=新客户端({
名称
电子邮件,
cuil,
电话,
地址:{
街道:address.street,
街道号:地址。街道号,
rootnumber:address.rootnumber,
地址:address.flat
}
});
注意:地址中的字段名称可能会有所不同,具体取决于您的req.body.address的格式

我假设您的请求正文如下:

{
  name : "Name",
  email: "abc@def.net",
  cuil: "cuil",
  phone: 1234567,
  address: {
    street: "street name",
    streetNumber: 10,
    RoofNumber: "roof number",
    flat: 12
  }
}

请提供其他详细信息。我想在postman上保存客户端,并查看对象客户端中的地址。例如,改为查看:“客户机”:{“地址”:“3U19020320230”},可以查看:“客户机”:{“地址”:{“id”:“3U19020320230”,“街道”:“曼哈顿街”,“街道号”:456,“屋顶号”:“4”,“公寓”:0}