#region HttpGet
// GET api/Users
[HttpGet]
public IEnumerable<Users> Get()
{
return _userList;
}
// GET api/Users/5
[HttpGet]
[AllowAnonymous]
//[EnableCors(origins: "http://localhost:9008/", headers: "*", methods: "GET,POST,PUT,DELETE")]
public Users GetUserByID(int id)
{
string idParam = HttpContext.Current.Request.QueryString["id"];
var user = _userList.FirstOrDefault(users => users.UserID == id);
if (user == null)
{
throw new HttpResponseException(HttpStatusCode.NotFound);
}
return user;
}
//GET api/Users/?username=xx
[HttpGet]
public IEnumerable<Users> GetUserByName(string userName)
{
string userNameParam = HttpContext.Current.Request.QueryString["userName"];
return _userList.Where(p => string.Equals(p.UserName, userName, StringComparison.OrdinalIgnoreCase));
}
//GET api/Users/?username=xx&id=1
[HttpGet]
public IEnumerable<Users> GetUserByNameId(string userName, int id)
{
string idParam = HttpContext.Current.Request.QueryString["id"];
string userNameParam = HttpContext.Current.Request.QueryString["userName"];
return _userList.Where(p => string.Equals(p.UserName, userName, StringComparison.OrdinalIgnoreCase));
}
[HttpGet]
public IEnumerable<Users> GetUserByModel(Users user)
{
string idParam = HttpContext.Current.Request.QueryString["id"];
string userNameParam = HttpContext.Current.Request.QueryString["userName"];
string emai = HttpContext.Current.Request.QueryString["email"];
return _userList;
}
[HttpGet]
public IEnumerable<Users> GetUserByModelUri([FromUri]Users user)
{
string idParam = HttpContext.Current.Request.QueryString["id"];
string userNameParam = HttpContext.Current.Request.QueryString["userName"];
string emai = HttpContext.Current.Request.QueryString["email"];
return _userList;
}
[HttpGet]
public IEnumerable<Users> GetUserByModelSerialize(string userString)
{
Users user = JsonConvert.DeserializeObject<Users>(userString);
return _userList;
}
//[HttpGet]
public IEnumerable<Users> GetUserByModelSerializeWithoutGet(string userString)
{
Users user = JsonConvert.DeserializeObject<Users>(userString);
return _userList;
}
/// <summary>
/// 方法名以Get开头,WebApi会自动默认这个请求就是get请求,而如果你以其他名称开头而又不标注方法的请求方式,那么这个时候服务器虽然找到了这个方法,但是由于请求方式不确定,所以直接返回给你405——方法不被允许的错误。
/// 所有的WebApi方法最好是加上请求的方式([HttpGet]/[HttpPost]/[HttpPut]/[HttpDelete]
/// </summary>
/// <param name="userString"></param>
/// <returns></returns>
public IEnumerable<Users> NoGetUserByModelSerializeWithoutGet(string userString)
{
Users user = JsonConvert.DeserializeObject<Users>(userString);
return _userList;
}
#endregion HttpGet
#region HttpPost
//POST api/Users/RegisterNone
[HttpPost]
public Users RegisterNone()
{
return _userList.FirstOrDefault();
}
[HttpPost]
public Users RegisterNoKey([FromBody]int id)
{
string idParam = HttpContext.Current.Request.Form["id"];
var user = _userList.FirstOrDefault(users => users.UserID == id);
if (user == null)
{
throw new HttpResponseException(HttpStatusCode.NotFound);
}
return user;
}
//POST api/Users/register
//只接受一个参数的需要不给key才能拿到
[HttpPost]
public Users Register([FromBody]int id)//可以来自FromBody FromUri
//public Users Register(int id)//可以来自url
{
string idParam = HttpContext.Current.Request.Form["id"];
var user = _userList.FirstOrDefault(users => users.UserID == id);
if (user == null)
{
throw new HttpResponseException(HttpStatusCode.NotFound);
}
return user;
}
//POST api/Users/RegisterUser
[HttpPost]
public Users RegisterUser(Users user)//可以来自FromBody FromUri
{
string idParam = HttpContext.Current.Request.Form["UserID"];
string nameParam = HttpContext.Current.Request.Form["UserName"];
string emailParam = HttpContext.Current.Request.Form["UserEmail"];
//var userContent = base.ControllerContext.Request.Content.ReadAsFormDataAsync().Result;
var stringContent = base.ControllerContext.Request.Content.ReadAsStringAsync().Result;
return user;
}
//POST api/Users/register
[HttpPost]
public string RegisterObject(JObject jData)//可以来自FromBody FromUri
{
string
WebAPI 接口参数、传参
最新推荐文章于 2021-09-22 11:24:52 发布