Angular8 извлекает непрерывные данные из конечной точки Scala Play, используя метод HttpClient GET - PullRequest
0 голосов
/ 26 сентября 2019

У меня проблемы с непрерывным получением данных из среды Scala Play в интерфейсный проект Angular 8.Для более простых образцов данных (статические jsons) было не сложно получить доступ к данным (методы GET и POST с параметрами w / wo), но когда я пытаюсь получить текущее время из конечной точки, реализованной в Scala, она просто не работает.Часть кода Scala работает как надо, как я тестировал с помощью команд curl, и возвращает ожидаемые результаты.

В Angular у меня есть сервис, который делает запрос в Scala и основной компонент, где я подписываюсь на функцию сервиса.app.service.ts

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';

import { map } from 'rxjs/operators';
import { Observable } from 'rxjs/index';

@Injectable()
export class AppService {
  private getTime = '/api/liveClock';

  constructor(private http: HttpClient) {
  }

  public retrieveTime() {
    return this.http.get(this.getTime, {responseType: 'text'}).pipe(
      map(response => response)
    );
  }

app.component.ts

import { Component, OnInit } from '@angular/core';

import { AppService } from './app.service';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {

  constructor(private appService: AppService) {
    this.appService.retrieveTime().subscribe({
      next(t) { console.log('d:', t); },
      error(e) {console.log('error:', e); },
      complete() { console.log('Finished'); }
    });
  }

  onInit() {
  }
}

Есть ли у вас какие-либо предложения по созданию этой работы?Большое спасибо!

1 Ответ

0 голосов
/ 27 сентября 2019

Я нашел решение для моей проблемы - другая реализация функции запроса на обслуживание:

public retrieveTime(): Observable<any> {
    const req = new HttpRequest(
      'GET', `${this.getTime}`, {responseType: 'text', reportProgress: true}
    );
    return this.http.request(req).pipe(
      map(response => response)
    );
  }

Если у кого-то есть другая идея, пожалуйста, сообщите мне: -)

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