【问题标题】:How to pass query parameter in AngularJS 2?如何在 AngularJS 2 中传递查询参数?
【发布时间】:2017-03-25 21:57:45
【问题描述】:

我正在使用 ASP.NET Core 和 AngularJS 2。http 查询参数有问题。无论我尝试什么,参数'quarter' 都不会传递给控制器​​。有人知道我在这里想念什么吗?

getBookingsBySaleUnit() {
    let params: URLSearchParams = new URLSearchParams();
    params.set('quarter', '1');
    let requestOptions = new RequestOptions();
    requestOptions.search = params; 

    this.http.get('/api/method', requestOptions).subscribe(result => {
            this.sales = result.json();
        }
      );
  }

【问题讨论】:

    标签: asp.net angularjs angular http asp.net-core


    【解决方案1】:

    这对我有用:

        let params: URLSearchParams = new URLSearchParams();
        params.set('quarter', 1);
        this.http.get('Result/Delete', { search: params })
           .subscribe([...])
    

    【讨论】:

    • 你是对的,但无法相信它是多么简单。实际上我正在调用控制器,所以我所要做的就是将它附加到 URL http.get('/api/method/' + this.quarter) :(
    【解决方案2】:

    您错过了传递参数。试试下面在 URL 中包含参数的代码。

    getBookingsBySaleUnit() {
        let params: URLSearchParams = new URLSearchParams();
        params.append('quarter', '1');
        let requestOptions = new RequestOptions();
        requestOptions.headers.set('Content-Type', 'application/x-www-form-urlencoded');
        this.http.get('/api/method?'+params.toString(), requestOptions).subscribe(result => {
            this.sales = result.json();
        });
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-06
      • 2016-07-06
      • 2015-08-26
      • 2021-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-19
      相关资源
      最近更新 更多