как настроить мой код для отправки данных в формате json в angular

#node.js #json #angular #express

#node.js #json #angular #выражать #выразить

Вопрос:

Я надеюсь, вы сможете мне помочь, мне нужно отправить некоторые параметры в формате json следующим образом:

 {
"InformationA": {
"str_id": 1,
"str_description": "message",
"str_email": "abcd@abcd.com.co"
},
"AddConfiguration": [
{
"int_code": 1,
"str_valor": "32201"
},
{
"int_code": 104,
"str_valor": "https://www.google.com.co/"
},
{
"int_code": 108,
"str_valor": "1"
}
]
}
  

Я пытаюсь отправить json через службу angular таким образом, но я не знаю, правильно ли это?:

 sendData(InformationA,AddConfiguration){
const params = 'InformationA='  JSON.stringify(InformationA) 'AddConfiguration='   
JSON.stringify(AddConfiguration);
return this.http.post<any>(`${this.route}/send-data`, params , { headers: this.headers });
}
  

также создайте функцию в серверной части nodejs, чтобы посмотреть, как она будет поступать:

 @Post('send-data')
async receibeData(@Req() req, @Res() res) {
try {
const data = req.body;
res.status(HttpStatus.OK).json(data)
} catch (err) {
throw err;
}
}
  

и с помощью консоли он печатается таким образом:

 {,…}
InformationA:" 
[{"str_id":"1","str_description":"message","str_email":"abcd@abcd.com.co"}]Addconfiguration= 
[{"int_code":1,"str_valor":"32201 "},{"int_code":104,"str_valor":"https://www.google.com.co 
"},{"int_code":108,"str_valor":"1 "}]"
  

Я действительно новичок в этом, и я хотел бы знать, как я адаптирую свои данные, чтобы их можно было отправлять по запросу.

Ответ №1:

Я думаю, вам следует попытаться создать объект JSON, соответствующий вашим требованиям. Вы не должны использовать JSON.stringify для этой цели. Я надеюсь, что это поможет вам.

 sendData(InformationA,AddConfiguration) {
const params = {
        InformationA: InformationA,
        AddConfiguration: AddConfiguration
};
return this.http.post<any>(`${this.route}/send-data`, params , { headers: this.headers });
}
  

Комментарии:

1. привет, при внесении этого изменения с помощью консоли оно печатается следующим образом: {{«InformationA»:: {,…}} {» Информация «:: {, …} {«str_id»: «1», «str_description»: «сообщение», «str_email»:»abcd@abcd.com «}: {, …}{«int_code»: 50,»str_valor»: «2701»},{«int_code»: 104, «str_valor»:» google.com.co «},{«int_code»:108,»str_valor»: «1»}: «»

2. Извините. Я допустил ошибку при создании объекта JSON. Пожалуйста, попробуйте этот способ const params = { ‘InformationA’: InformationA, ‘AddConfiguration’: AddConfiguration }; Создайте свое свойство в виде строки.