将数据从angular发送到节点api

时间:2019-04-17 12:27:25

标签: node.js angular sequelize.js

我是初学者,所以我对我的问题不相关或不易解决表示歉意,但我仍无法解决我的问题4天。

我正在开发一个api,它将从角度形式接收数据,然后将其与续集一起存储在mariadb表上。

当我提交要通过url提交的表单时,通过api将其发布到表格中,我可以看到req.body已定义,并且可以到达api,但是我的角度不正确引发的http帖子(错误500)。 使用邮递员,我发现我的网址无法访问,我无法弄清楚是不是我的错误来自发布角度,还是我模型的后端,即使错误500来自后端。

我试图重新定义我的序列化模型,解析并字符串化我发送的对象,尝试其他网址...但是没有任何效果。

这是提交表单时调用的我的函数,该函数formatrequestschedulest返回我要发布的对象。

onSubmitScheduled(){
    let OndemandScheduledRequest = this.formatRequestScheduled(this.selectedHotel, this.selectedCheckInDate, this.selectedCheckOutDate, this.selectedNumber, this.selectedCurrency, this.selectedReportName, this.selectedUser, this.selectedEmail, this.selectedFormat);

    console.log(OndemandScheduledRequest);
    this.saveScheduledRequest(OndemandScheduledRequest);
    return this.openDialog();
  }


    saveScheduledRequest(onDemandScheduledRequest: OnDemandScheduledRequest){
       this.http.post('/api/ScheduledReport', JSON.stringify(onDemandScheduledRequest), {headers: {'Content-Type': 'application/json'}})
         .subscribe(res=>{ console.log(res
         )
           console.log('ok')},
         (err) =>
           console.log('an error'))
           /*console.log(err))*/
    }

这是我的api:

var request= require('../controller/ondemandscheduledrequests');
var router = express.Router();


router.get('/getreport',request.create);
router.post('/ScheduledReport',request.create);

我也可以提供我得到的错误,但我不知道我是否可以将图片加入到问题中。

我只想将表单数据存储到表中,但是却出现错误500。

this is the error i get

1 个答案:

答案 0 :(得分:0)

使用如下所示的管道并尝试一次

  this.http.post('/ScheduledReport', JSON.stringify(onDemandScheduledRequest).pipe().subscribe(val => {
            console.log(val, "service");
          , {headers: {'Content-Type': 'application/json'}})}