加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 如何以角度读取nodejs流?

发布时间:2020-12-17 17:38:39 所属栏目:安全 来源:网络整理
导读:在nodejs中,我向客户端发送一个流,如下所示: DockerService.get().pull('my/image',function(err,stream) { if (err) { return res.badRequest(err); } else { return stream.pipe(res); }}); 这是使用$http.get从angularjs客户端触发的: pull: function()
在nodejs中,我向客户端发送一个流,如下所示:

DockerService.get().pull('my/image',function(err,stream) {
  if (err) {
    return res.badRequest(err);
  } else {
    return stream.pipe(res);
  }
});

这是使用$http.get从angularjs客户端触发的:

pull: function() {
  var url = ENV.apiEndpoint + '/docker/pull';
  var promise = $http.get(url).success(function(response) {
    return response;
  }).error(function(data,status) {

  });
  return promise;
}

但是我无法读取流.从角度我得到一个错误消息:

SyntaxError: Unexpected token {
    at Object.parse (native)
    at fromJson (file://build/vendor/angular/angular.js:1065:14)
    at defaultHttpResponseTransform (file://build/vendor/angular/angular.js:8579:16)
    at file://build/vendor/angular/angular.js:8664:12
    at forEach (file://build/vendor/angular/angular.js:323:20)
    at transformData (file://build/vendor/angular/angular.js:8663:3)
    at transformResponse (file://build/vendor/angular/angular.js:9389:23)
    at processQueue (file://build/vendor/angular/angular.js:13189:27)
    at file://build/vendor/angular/angular.js:13205:27
    at Scope.$get.Scope.$eval (file://build/vendor/angular/angular.js:14401:28)

我找不到任何有关如何处理角度流的信息.你能帮我吗?

头:

响应太大而无法在此处显示,因此这是它的第一部分:

预习:

解决方法

所以这不是有效的JSON,它是一系列换行符(可能是)JSON消息.这就是“意外令牌”{‘“的含义. Angular的内置解析器不支持开箱即用.问题不在于流媒体与缓冲数据,它只是一种不直接支持的体格式angularjs.您需要确保绕过angular的内置解析器,然后您可以在换行符上拆分字符串并尝试/ catch解析每一行作为JSON对象.

据我所知,流入浏览器的最佳模块是oboe.js.您可以使用RonB/angular-oboe加上一些代码来缓冲每一行,然后将ndjson语法解析为JS对象流.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读