使用ionic2从PHP获取数据

时间:2017-08-17 14:27:02

标签: php angular ionic-framework

loginstatus.php

$data = (object)['login'=>'yes'];
echo json_encode($data);

app.component.ts

import { Component } from '@angular/core';
import { Platform } from 'ionic-angular';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
import { PostsService } from './services/posts.service';

import { HomePage } from '../pages/home/home';
@Component({
  templateUrl: 'app.html',
  providers: [PostsService]
})
export class MyApp {
  rootPage:any = HomePage;

  constructor(public postsService: PostsService, platform: Platform, statusBar: StatusBar, splashScreen: SplashScreen) {
    platform.ready().then(() => {
      // Okay, so the platform is ready and our plugins are available.
      // Here you can do any higher level native things you might need.
      statusBar.styleDefault();
      splashScreen.hide();
    });
  }

  ngOnInit(){
    console.log("initialized");
      this.postsService.loginstatus().subscribe(status =>{
        console.log(status);
        alert(status);

      });
  }
}

服务/ posts.service.ts

import {Injectable} from '@angular/core';
import {Http} from '@angular/http';
import 'rxjs/add/operator/map';

@Injectable()

export class PostsService{
    constructor(private http: Http){

    }

    loginstatus(){
        console.log('called00');
        return this.http.get('http://localhost/sugumar/mysuite/logintest.php')
         //return this.http.get('https://jsonplaceholder.typicode.com/posts');
            .map(res => res.json());

    }

}

app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { ErrorHandler, NgModule } from '@angular/core';
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';
import { SplashScreen } from '@ionic-native/splash-screen';
import { StatusBar } from '@ionic-native/status-bar';
import {HttpModule} from '@angular/http';

import { MyApp } from './app.component';
import { HomePage } from '../pages/home/home';

@NgModule({
  declarations: [
    MyApp,
    HomePage
  ],
  imports: [
    BrowserModule,
    HttpModule,
    IonicModule.forRoot(MyApp)
  ],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp,
    HomePage
  ],
  providers: [
    StatusBar,
    SplashScreen,
    {provide: ErrorHandler, useClass: IonicErrorHandler}
  ]
})
export class AppModule {}

如果请求数据来自

https://jsonplaceholder.typicode.com/posts

它正确地提醒数据。如果我从本地服务器请求数据

loginstatus.php

它没有记录,也没有警报。

0 个答案:

没有答案