如何 post 从 ng2 服务到 MVC WebAPI 的布尔值
How to post boolean value from ng2 service to MVC WebAPI
我正在尝试 post 从 ng2 服务到我的 MVC WebAPI 的值。当值为 false
时有效。当值为 true
.
时,它不会 post 返回
我的service.ts
EnrolStudent(HasCriminal: boolean): Observable<number> {
console.log(HasCriminal);
return this.http.post('/api/student/enrolstudent', HasCriminal).map(result => {
return result.json() as number;
}).catch(error => {
console.log(error);
return Observable.throw(new Error('Error occured in calling EnrolStudent service'));
});
}
在上面的代码中,我可以跟踪并清楚地看到 HasCriminal
在控制台中是 true/false。
如果值为false
,则正确发送参数。
但是,如果值为 true
,即使我可以在控制台中看到 true
,它也不会发送任何内容。
您能否建议我如何将此布尔值正确发送到我的 MVC Webapi?
对于单个原始值,您必须使用 url 编码。或者,您可以将其包装在客户端和服务器端的对象中。假设你想保持服务器代码不变,这里需要修改客户端代码。
const options = {
headers: new Headers({ 'content-type':'application/x-www-form-urlencoded'})
} as RequestOptionsArgs;
const data = '=' + HasCriminal.toString();
return this.http.post('/api/student/enrolstudent', data, options).map((result: Response) => {
return result.json() as number;
}).catch(error => {
console.log(error);
return Observable.throw(new Error('Error occured in calling EnrolStudent service'));
});
我正在尝试 post 从 ng2 服务到我的 MVC WebAPI 的值。当值为 false
时有效。当值为 true
.
我的service.ts
EnrolStudent(HasCriminal: boolean): Observable<number> {
console.log(HasCriminal);
return this.http.post('/api/student/enrolstudent', HasCriminal).map(result => {
return result.json() as number;
}).catch(error => {
console.log(error);
return Observable.throw(new Error('Error occured in calling EnrolStudent service'));
});
}
在上面的代码中,我可以跟踪并清楚地看到 HasCriminal
在控制台中是 true/false。
如果值为false
,则正确发送参数。
但是,如果值为 true
,即使我可以在控制台中看到 true
,它也不会发送任何内容。
您能否建议我如何将此布尔值正确发送到我的 MVC Webapi?
对于单个原始值,您必须使用 url 编码。或者,您可以将其包装在客户端和服务器端的对象中。假设你想保持服务器代码不变,这里需要修改客户端代码。
const options = {
headers: new Headers({ 'content-type':'application/x-www-form-urlencoded'})
} as RequestOptionsArgs;
const data = '=' + HasCriminal.toString();
return this.http.post('/api/student/enrolstudent', data, options).map((result: Response) => {
return result.json() as number;
}).catch(error => {
console.log(error);
return Observable.throw(new Error('Error occured in calling EnrolStudent service'));
});