我正在研究angular6项目。使用表单角度服务,我通过以下方式调用API并发送参数:
角度6
uint16_t ** A = malloc(N * sizeof *A);
for (size_t i = 0; i < N; ++i)
{
A[i] = ((uint16_t*) p) + i*M;
}
uint16_t ** B = malloc(N * sizeof *B);
for (size_t i = N; i < 2*N; ++i)
{
B[i - N] = ((uint16_t*) p) + i*M;
}
我如何在asp.net核心MVC Web API中接收HttpParams发送的参数?在尝试了以下方法,但是没有用。
.NetCore Web Api
GetUserList() {
var paramsT = new HttpParams();
paramsT.append('userID', '100');
paramsT.append('name', 'himadri');
return this.http.get(this.baseURLApi + "/User/GetUserList", { params: paramsT });
}
答案 0 :(得分:0)
您正尝试发送如下请求:
/User/GetUserList?userID=100&name=himadri
但是,客户端实际发送的是:
/User/GetUserList?
原因是您的paramsT
是全新的HttpParams
。请注意,append(string,string)
将为给定参数名称返回带有附加值的新主体。因此,您需要将代码更改为:
var paramsT = new HttpParams()
.append('userID', '100')
.append('name', 'himadri');
现在请求的URL和querystring将是正确的。
请参见docs here
答案 1 :(得分:0)
HttpParams
是不可变的,并且append
方法返回新的HttpParams
您的代码应为:
GetUserList() {
let paramsT = new HttpParams();
paramsT = paramsT.append('userID', '100');
paramsT = paramsT.append('name', 'himadri');
return this.http.get(this.baseURLApi + "/User/GetUserList", { params: paramsT });
}
或
GetUserList() {
const paramsT = new HttpParams()
.append('userID', '100')
.append('name', 'himadri');
return this.http.get(this.baseURLApi + "/User/GetUserList", { params: paramsT });
}