Позвонить в сервис из стороннего приложения - PullRequest
0 голосов
/ 28 июня 2018

У меня есть 2 разных приложения, одно на основе Angular2, а другое на PHP. Мне нужно вызвать функцию сервиса первого (Angular) из второго (PHP). Возможно ли это, даже если это странно и безобразно?

Я знаю, как вызывать файл PHP внутри приложения Angular, но не иначе.

Вот мои тестовые файлы:

webService.component.ts

import { Component } from '@angular/core';
import {Observable} from "rxjs/Observable";
import {ActivatedRoute, Params} from "@angular/router";
import {WebService} from "./webService.service";

@Component({
    selector: 'webService-element',
    template: `{{result}}`
})

export class WebServiceComponent {
    webService: WebService;
    result: any;

    constructor(private route: ActivatedRoute, webService: WebService) {
        this.webService = webService;
    }

    ngOnInit() {
        this.route.params.subscribe((params: Params) => {
            let aId = params['aId'];
            let bId = params['bId'];
            this.getPif(aId, bId);
        });
    }

    getPif(aId: any, bId: any): any { 
        this.result = this.webService.getPif();
        return this.webService.getPif();
    }
}

webService.service.ts

import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Observable } from 'rxjs/Rx';

@Injectable()
export class WebService {

    constructor(private http: Http) {}

    //getPif(): Observable<any> {
    getPif(): any {
        console.log("rraaahhhhh");
        return "pif";
    }
}

webService.routing.ts

import { Routes, RouterModule } from "@angular/router";
import {WebServiceComponent} from "./webService.component";

const WEBSERVICE_ROUTES: Routes = [
    { path: '', component: WebServiceComponent },
    { path: 'getTest/:aId/:bId', component: WebServiceComponent },
];

export const webServiceRouting = RouterModule.forChild(WEBSERVICE_ROUTES);

webService.module.ts

import { NgModule } from "@angular/core";
import {WebService} from "./webService.service";
import {WebServiceComponent} from "./webService.component";
import {webServiceRouting} from "./webService.routing";


@NgModule({
    imports: [
        webServiceRouting
    ],
    declarations: [
        WebServiceComponent
    ],
    providers: [
        WebService
    ]
})

export class WebServiceModule { }

Я пытался запустить "http://localhost:3000/webService/getTest/1/2"

Большое спасибо за вашу помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...