POST данные на сервере - угловые 4

Я создал небольшую программу, которая используется для публикации данных и получения результата обратно на сервер. Я создал кнопку в.html, и функция работает нормально. Я получаю журнал доступа со стороны сервера, как только я нажимаю кнопку POST. Но я не мог отобразить данные. Должен ли я использовать функцию GET снова или есть какой-нибудь простой способ?

app.component.ts

 import {Injectable, Component } from '@angular/core';
 import { Http, Response, RequestOptions, Headers} from '@angular/http';
 @Component({
 selector: 'app-root',
 templateUrl:'app.component.html'
 })

 export class AppComponent {
 result;
 constructor (private http:Http) {

 }

 executeHttp() {
 var headers = new Headers();
 //this.createAuthorizationHeader(headers);
 headers.append('Content-Type', 'application/json');
 var content = JSON.stringify({
 name: 'my name'
 });

  return this.http.post(
 'http://100.000.00.000/webservices/voltage-info-service/server/server.php', content, {
  headers: headers
  }).map(res => res.json()).subscribe((data)

  => { '<?xml version="1.0" encoding="utf-8"?><lfc:requests><lfc:request><lfc:busID>66</lfc:busID><lfc:timestamp>223456789</lfc:timestamp><lfc:coordinates>'+
    '<lfc:LongD>8</lfc:LongD><lfc:LongM>6</lfc:LongM><lfc:LongS>25.599</lfc:LongS><lfc:LatD>51</lfc:LatD><lfc:LatM>33</lfc:LatM><lfc:LatS>23.9898</lfc:LatS>'+
    '</lfc:coordinates></lfc:request></lfc:requests>';},

    this.result =data;
    console.log("data");  },
    err => { console.log(err); }
  );
  }
  }

  app.component.html

  <li>
    <button type="submit" (click)="executeHttp()">SOAP request </button>
  </li>

1 ответ

Решение

Таким образом, лучший подход был бы, если бы вы создали атрибут в AppComponent, например, "результат".

 export class AppComponent {
   result;
 ...

Затем в следующем разделе подписки что-то вроде:

.subscribe((data) => {
  this.result = data;
})

а затем в app.component.html:

<div>{{result}}</div>
Другие вопросы по тегам