Angular 6 - Устаревшие методы - PullRequest
0 голосов
/ 15 мая 2018

Я пытаюсь изменить параметры запроса, но он устарел. Я не могу найти вариант для этого.

Любая помощь?

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

@Injectable({
  providedIn: 'root'
})
export class UserService {
  private baseUrl:string = 'http://localhost:8080/api';
  private headers = new HttpHeaders({'Content-Type':'application/json'});
  private options = new RequestOptions({headers:this.headers});

  constructor() { }
}

Ответы [ 2 ]

0 голосов
/ 16 августа 2019

Устаревшие API и функции

Headers -> HttpHeaders
RequestOptions -> HttpRequest
HttpModule -> HttpClientModule

Старый

import {HttpModule, Headers, RequestOptions} from "@angular/http";

New

import { HttpClientModule, HttpRequest, HttpHeaders } from "@angular/common/http";

Для получения более подробной информации см. Следующий URL: https://angular.io/guide/deprecations

0 голосов
/ 15 мая 2018

Я думаю, что это проблема импорта, потому что они перенесли эти параметры в другое место. В документации говорится:

используйте @ angular / common / http вместо

Так что, я думаю, вам просто нужно импортировать параметры из @angular/common/http вместо @angular/http

EDIT

Я должен был выглядеть немного ближе. Заголовки теперь могут отправляться немного иначе, чем раньше, вам больше не нужно использовать RequestOptions, просто упакуйте его как простой объект. В вашем случае это может выглядеть так:

const httpOptions = {
  headers: new HttpHeaders({
    'Content-Type':  'application/json'
  })
};

Затем вы можете использовать эти опции с вашими методами http. Вот пример из основы angular :

addHero (hero: Hero): Observable<Hero> {
  return this.http.post<Hero>(this.heroesUrl, hero, httpOptions)
    .pipe(
      catchError(this.handleError('addHero', hero))
    );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...