angular5 和 http GET 查询参数 - 看起来像专用对象(HttpParams 或 UrlSearchPa



我有一个奇怪的问题,我无法理解。下面是调用 REST 终结点的代码:

this.http.get<AllApplicationType[]>(environment.SUDS_API_SERVICE_URL + environment.SUDS_ALL_APPLICATIONS_URL, this.setQueryParams(page, size)).toPromise() ...

其中 setQueryParams 函数如下所示:

setQueryParams(page?: number, size?: number): {} {
const startFrom = page * size + 1;
const params = new HttpParams();
params.set('startFrom', startFrom.toString());
params.set('maxRecords', size.toString());
return params;

}

当请求来到我的后端查询参数时为空,不知何故它们没有被传递,但为什么?这不是正确的方法还是什么?

只是碰巧使用 HttpParams 或 URLSearchParams 对象根本不起作用。在我的情况下,这 2 次的所有尝试都失败了。 唯一的方法是像这样显式构建参数:

setRequestParams(page?: number, size?: number): {} {
const startFrom = page * size + 1;
const params = {'startFrom': startFrom.toString(), 'maxRecords': size.toString()};
const options = {params: params};
return options;

}

好吧,我相信这是Angular HttpClient中的一个错误。

最新更新