Hyp*_*ate 3 javascript asp.net-mvc json typescript angular
我想通过 Angular 在我的 ASP.NET Core MVC API 控制器中填充一个字符串参数。
我有这个工作电话:
应用程序接口
//A class to wrap my string
public class Foo
{
public string bar { get; set; }
}
[HttpPost]
public JsonResult GetDetails([FromBody] Foo bar) { ... }
Run Code Online (Sandbox Code Playgroud)
角度(服务)
public get() {
let bar: any = new Object();
bar.foo = 'Hello World';
return this._httpClient.post('api/GetDetails', bar).toPromise();
}
Run Code Online (Sandbox Code Playgroud)
但我真正想要的是传递一个字符串而不必将它包装在这样的类中:
应用程序接口
[HttpPost]
public JsonResult GetDetails([FromBody] string bar) { ... }
Run Code Online (Sandbox Code Playgroud)
角度(服务)
public get() {
let bar: string = "Hello World";
return this._httpClient.post('api/GetDetails', bar).toPromise();
}
Run Code Online (Sandbox Code Playgroud)
但是我收到错误,比如它是不受支持的媒体类型或“bar”保持为空。
只传递一个值的正确语法是什么?
另一件事是,我可以将一个整数从 Angular 传递给 API,但不是字符串。
尝试这个 :
let bar = JSON.stringify({'foo' : 'Hello World'});
let body = new HttpParams();
body = body.set('bar', bar);
http.post('/api/GetDetails', body).subscribe();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3820 次 |
| 最近记录: |