WebApi的Get访问方式比较简单,我们可以通过浏览器url地址直接访问。
但是Post方式比较麻烦,我们可以通过html的form提交post值,当然也可以在PostData里面直接传值。在IOS和Android开发中常用PostData
从在可以端调去[FromBody]类api的时候在传入的参数前一定要加一个“=”号。不然返回是null。
从PostData传入的参数我们以Request来接收,当然可以接收string data等类型。
string postData = Request.Content.ReadAsStringAsync().Result;
public class TestApi2Controller : ApiController { ///无参数Post public string PostAaa() { return "hellowrold"; } //有参数从form中传入 id:"=hellowrold" public string PostFromId([FromBody]string id) { return id; } //PostData传值 public string PostFromPosData() { string postData = Request.Content.ReadAsStringAsync().Result; return postData; } }
多个参数传递
Get方法
[HttpGet]//http://localhost:8069/api/Test/test2?v1=aaaa&v2=22222 public string test2(string v1, string v2) { return v1+v2; }
Post方法,需要引用JSON.Net
[HttpPost] public string test([FromBody]JObject id) { dynamic obj = id; return obj["v1"].ToString()+obj["v2"].ToString(); }