我不知道如何对这种方法进行API调用:

[HttpGet]
[ActionName("GetSupport")]
public HttpResponseMessage GetSupport(int projectid)

因为它是GET,但仍然有一个参数要传递,如何做到这一点?

let headers = new Headers();
      headers.append('Content-Type', 'application/json');
      headers.append('projectid', this.id);

      this.http.get('http://localhost:63203/api/CallCenter/GetSupport', { headers: headers })

推荐答案

有这样的东西:

let headers = new Headers();
headers.append('Content-Type', 'application/json');
headers.append('projectid', this.id);
let params = new URLSearchParams();
params.append("someParamKey", this.someParamValue)

this.http.get('http://localhost:63203/api/CallCenter/GetSupport', { headers: headers, search: params })

当然,将你需要的每个参数都添加到params.它提供了比仅仅使用URL字符串向请求传递参数更大的灵活性.

EDIT(28.09.2017):正如Al-Mothafar在 comments 中所说,search在Angular 4中被弃用,所以你应该使用params

EDIT(02.11.2017):如果您使用的是新的HttpClient,那么现在有HttpParams个,它们的外观和使用方式如下:

let params = new HttpParams().set("paramName",paramValue).set("paramName2", paramValue2); //Create new HttpParams

然后用基本相同的方式将参数添加到请求中:

this.http.get(url, {headers: headers, params: params}); 
//No need to use .map(res => res.json()) anymore

更多关于HttpParamsHttpClient的文档

Typescript相关问答推荐

`((PrevState:NULL)=>;NULL)|null`是什么意思?

在泛型类型中对子代执行递归时出错

rxjs forkJoin在错误后不会停止后续请求

在MessageStore对象中实现条件类型时出现TypeScrip错误

React重定向参数

为什么有条件渲染会导致material 自动完成中出现奇怪的动画?

在对象中将缺省值设置为空值

表单嵌套太深

TypeScrip省略了类型参数,仅当传递另一个前面的类型参数时才采用默认类型

如何在深度嵌套的Reaction路由对象中隐藏父级?

react 路由Use RouteLoaderData类型脚本错误

有什么方法可以类型安全地包装import()函数吗?

如何将父属性类型判断传播到子属性

Angular 16将独立组件作为对话框加载,而不进行布线或预加载

VITEST警告:当前的测试运行器不支持After Each/teardown挂钩

为什么TypeScrip假定{...省略类型,缺少类型,...选取类型,添加&>}为省略类型,缺少类型?

在类型脚本中创建显式不安全的私有类成员访问函数

在Vite中将SVG导入为ReactComponent-不明确的间接导出:ReactComponent

从联合提取可调用密钥时,未知类型没有调用签名

Typescript循环函数引用