首页 > 解决方案 > 使用离子 3 的 HTTP GET 请求?

问题描述

我是 ionic 新手,我正在尝试使用 REST API 获取结果,使用 GET 方法但不成功,我从过去两天开始陷入这个问题

谁能帮帮我吗。

我的代码在这里

import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { Slides } from 'ionic-angular';
import { ViewChild } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Http } from '../../../node_modules/@angular/http';
import { HttpHeaders } from '@angular/common/http';
import { Headers } from '@angular/http';
import { RequestOptions } from '@angular/http';
import 'rxjs/add/operator/map'
let headers = new Headers();
    headers.append('Content-Type', 'application/x-www-form-urlencoded');
    headers.append('Accept', 'application/json');
    headers.append('Authorization', 'Basic Ok9AYWNsZUAxMjM=');
    headers.append('AuthUser', '78909890');
    headers.append('SecretKey','a8658f0d67890459');

    let options = new RequestOptions({ headers: headers });

    this.http.get('https:I/v01/?=AttachmentFiles')
  .map(res => res.json())
  .subscribe(data =>
  {

    this.posts = data["value"]; 
    console.log('GET RESPONSE',this.posts +"");
  });

我收到错误

core.js:1449 错误错误:未捕获(承诺中):错误:StaticInjectorError(AppModule)[ommunicationPage -> Http]:
StaticInjectorError(Platform:core)[ommunicationPage -> Http]:NullInjectorError:没有Http提供者!错误:StaticInjectorError(AppModule)[mmunicationPage -> Http]:
StaticInjectorError(平台:核心)[mmunicationPage -> Http]:

我的应用模块.ts

import { NgModule, ErrorHandler, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular';
import { MyApp } from './app.component';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { HttpClientModule } from '@angular/common/http';
import { LoginPage } from '../pages/login/login';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
import { DashboardPage } from '../pages/dashboard/dashboard';
import { AppDashboardPage } from '../pages/app-dashboard/app-dashboard';
import { WorkHistoryPage } from '../pages/work-history/work-history';
import { ElBalancePage } from '../pages/el-balance/el-balance';
import { LearningTabPage } from '../pages/learning-tab/learning-tab';
import { MandatoryTrainigsPage } from '../pages/mandatory-trainigs/mandatory-trainigs';
import { PastDueTrainingsPage } from '../pages/past-due-trainings/past-due-trainings';
import { ActiveTrainigsPage } from '../pages/active-trainigs/active-trainigs';
import { ChartsModule } from 'ng2-charts';
import { TabsPage } from '../pages/tabs/tabs';
import { BasicDetailsPage } from '../pages/basic-details/basic-details';
import { PersonalDetailsPage } from '../pages/personal-details/personal-details';
import { HomePage } from '../pages/home/home';
import { MangerViewPage } from '../pages/manger-view/manger-view';
import { Navbar } from 'ionic-angular';
import { SuperTabsModule } from 'ionic2-super-tabs';
import { Logger } from 'angular2-logger/core';
import { RestApiProvider } from '../providers/rest-api/rest-api';
import { InAppBrowser } from '@ionic-native/in-app-browser';
import {HelpmetModalPage} from '../pages/helpmet-modal/helpmet-modal';
import {HelpMatePage} from '../pages/help-mate/help-mate';
import {SoftLoanPage} from '../pages/soft-loan/soft-loan';

@NgModule({
  declarations: [
    MyApp,
    DashboardPage,
    LoginPage,
    AppDashboardPage,
    WorkHistoryPage,
    ElBalancePage,
    LearningTabPage,
    MandatoryTrainigsPage,
    PastDueTrainingsPage,
    ActiveTrainigsPage,
    TabsPage,
    BasicDetailsPage,
    PersonalDetailsPage
  ],
  imports: [
    BrowserModule,
    HttpClientModule,
    ChartsModule,
    FormsModule,
    SuperTabsModule,
    IonicModule.forRoot(MyApp, { tabsPlacement: 'top', }),
    SuperTabsModule.forRoot()
  ],
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp,
    LoginPage,
    DashboardPage,
    AppDashboardPage,
    WorkHistoryPage,
    ElBalancePage,
    LearningTabPage,
    MandatoryTrainigsPage,
    PastDueTrainingsPage,
    CorpCommunicationPage
  ],
  providers: [
    StatusBar,
    SplashScreen,
    Logger,
    RestApiProvider,
    InAppBrowser,
    Deeplinks,
    { provide: ErrorHandler, useClass: IonicErrorHandler }
  ]
})
export class AppModule { }

请帮助我提前致谢。

标签: ionic-frameworkvisual-studio-codeionic3

解决方案


您应该HttpModule像这样导入 app.module.ts

import { HttpModule } from '@angular/http';

...

imports: [
    HttpModule,
],

推荐阅读