【问题标题】:Unexpected token 'u' in NodeJSNodeJS中的意外令牌'u'
【发布时间】:2016-12-12 16:16:27
【问题描述】:

我正在制作一个票务系统,我在其中收集数组中座位的索引,但是当使用 Node 收集时,它被收集为我使用 JSON.parse 解析的对象。

这是来自我的 Angular 控制器的控制器的代码

  $scope.bookThisSeat = function(seatIndex){

    console.log(seatIndex);
    $scope.ticket.selectedSeats.push(seatIndex);
    console.log($scope.ticket)
  }

  $scope.registerTicket = function(){
    $scope.ticket.selectedBus = $scope.ticket.selectedBus.id;
    $scope.ticket.selectedSeats = angular.toJson($scope.ticket.selectedSeats);
    console.log($scope.ticket);
    $http.post('/tickets/create',$scope.ticket).
    success(function(data){
      if(data.success){
        console.log("success")
      }

    }).
    error(function(err){
      console.log(err);
    })
  }

这是我的节点 JS 函数来收集输入数据

  collect: function(req,res,next){
    var fields = ['id','departure','destination','depDate','desDate','selectedSeats','amount','passenger_name','phone','selectedBus'];
    var reqdata = {};
    fields.forEach(function(entry){
      if(typeof req.body[entry] !=='undefined')
        reqdata[entry] = sanitize(req.body[entry]);
      if(typeof req.query[entry]!== 'undefined')
        reqdata[entry] = sanitize(req.query[entry]);
      if(typeof req.params[entry] !== 'undefined')
        reqdata[entry] = sanitize(req.params[entry]);
    });
    reqdata.selectedSeats = JSON.parse(reqdata.selectedSeats);
    req.saf_tktdata = reqdata;

当我收集所有数据时它工作正常,但它返回一个 Unexpected error u 每当我只想收集 depDatedesDate 字段时。

我该如何解决这个问题?

【问题讨论】:

    标签: angularjs json node.js


    【解决方案1】:

    我猜是“意外错误 u”,错误日志中的 u 表示 undefined

    当你收集所有数据时,reqdata.selectedSeates 不是undefined

    但是当你只收集depDatedesDate时,可能reqdata.selectedSeatesundefinded,它不可能是JSON.parse

    所以快速修复是

    reqdata.selectedSeats = reqdata.selectedSeats ? JSON.parse(reqdata.selectedSeats) : null;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-29
      • 1970-01-01
      • 2018-08-09
      • 2014-06-06
      • 1970-01-01
      • 2021-08-20
      • 1970-01-01
      • 2016-09-04
      相关资源
      最近更新 更多