2017-07-14 14 views
5

W pakiecie HTTP Angular 4 ('@ angle/http') obiekt URLSearchParams może zostać przekazany w żądaniu pobierania. Podczas przypisywania obiektu parametrów w metodzie żądania, jaka jest różnica między używaniem wyszukiwania i params jako atrybutem do przekazania wartości do?Angular 4 http get z parametrami - różnica między wyszukiwaniem a parametrami

Na przykład, jaka jest różnica między następującymi dwoma kawałkami kodu:

let params = new URLSearchParams(); 
params.set('param1', 'xyz'); 
this.http.get('url', { search: params }); 

i

let params = new URLSearchParams(); 
params.set('param1', 'xyz'); 
this.http.get('url', { params: params }); 

Dziękujemy.

Odpowiedz

12

Wyszukiwanie jest przestarzałe od wersji 4.0, a params jest preferowanym sposobem przekazywania parametrów zapytania.

+2

Dziękuję, doceniam odpowiedź, dokumentacja jest w ciągłym zmianom i jest również bardzo brakuje w szczegóły. Dzięki jeszcze raz. – Dreamlord

-1

Możesz używać klasy HttpParams!

Sprawdź ten fragment:

import { HttpParams } from '@angular/common/http'; 

private setParams(parameters): HttpParams { 
    let params = new HttpParams(); 
    let keys = Object.keys(parameters); 

    keys.forEach((key) => { 
     params = params.append(key, parameters[key].toString()); 
    }); 

    return params; 
} 

I w swoim wniosku:

let params = this.setParams({}); 
http.get(your_url, {params: params}); 
Powiązane problemy