如何在angular 6服务中发出Http请求

FrozzenFinger

这是我的事,我有一个消息服务,我想通过HTTP请求(Rest Api)从服务器收集数据,如下所示:

import { Sensor } from './sensor.model'
import { HttpClient } from '@angular/common/http';

export class MessageService{
  mqttMessageData : JSON[]=[];
  coapMessageData : JSON[]=[];
  xmppMessageData : JSON[]=[];

  constructor(private httpClient: HttpClient) {

  }
getMqttMessages() {
    this.httpClient.get<JSON>('http://127.0.0.1:5002/messages/mqtt').subscribe(data => {
      this.mqttMessageData.push(data);
      console.log(data);
    });
  }

但是我的浏览器控制台上出现此错误(ng服从中没有错误):

Uncaught Error: Can't resolve all parameters for MessageService: (?).
    at syntaxError (compiler.js:1016)
    at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver._getDependenciesMetadata (compiler.js:10917)
    at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver._getTypeMetadata (compiler.js:10810)
    at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver._getInjectableTypeMetadata (compiler.js:11032)
    at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver.getProviderMetadata (compiler.js:11041)
    at compiler.js:10979
    at Array.forEach (<anonymous>)
    at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver._getProvidersMetadata (compiler.js:10939)
    at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver.getNonNormalizedDirectiveMetadata (compiler.js:10416)
    at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver._getEntryComponentMetadata (compiler.js:11013)

因此,我认为httpClient存在问题,但是我不知道如何通过其他方式进行操作。

苏伦·斯拉皮扬(Suren Srapyan)

您需要@Injectable在服务上添加装饰器

import { Injectable } from '@angular/core'

@Injectable()
export class MessageService {
   ...
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在 Angular 4 Universal 中发出 http post 请求?

如何在PHP中发出HTTP请求?

如何在Swift中发出HTTP请求?

如何在工厂中发出http请求

如何在 Node.js 服务器中发出 HTTP/HTTPS 请求?

如何在node.js中发出HTTP POST请求?

如何在PHP中发出异步HTTP请求

如何在react-redux中发出HTTP请求?

如何在Android中发出http获取请求

如何在 RxJs 中发出多个嵌套的 http 请求?

如何在Node.js中发出扩展的HTTP请求

如何在AngularDart中发出http请求后更新视图

如何取消 RXJS 效果中发出的 Angular http 请求

如何在Angular 2中发出启用CORS的HTTP请求?

如何在angular中发出JSONP POST请求?

我可以使用angular4在相同的服务方法中发出两个单独的Http get请求吗?

在错误处理Angular 7 RXJS中发出http请求

如何使用 axios 在 JavaScript 中发出同步 HTTP GET 请求?

如何在puppeteer中发出POST请求?

如何在Rust中发出GET请求?

如何在 React 中发出 AJAX 请求?

如何在 Laravel 中发出 SOAP 请求?

如何在客户端渲染的React应用中发出服务器端请求?

如何在游乐场更新功能中发出http请求?

有谁知道如何在flutter中发出http请求?

如何在http-proxy-middleware函数内的NodeJS中发出终止请求?

如何在 Express 中的 router.get 方法中发出 HTTP 请求

如何在React Native IOS应用程序中发出HTTP请求?

如何在颤动中发出带有url编码主体的HTTP POST请求?