这篇文章将为大家详细讲解有关WebApi如何调用通用方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
WebApi传递基础参数的时候可能会有各种各样的问题,有的需要在服务端增加[FromBody]的特性,有的需要增加一层封装为实体,有的用动态类型。通过WebClient类。代码如下,需要什么参数只需要在QueryString中添加即可。
try
{
WebClient client = new WebClient();
//client.QueryString.Add("account", "冯宝宝");
//client.QueryString.Add("password", "7777");
client.QueryString.Add("name", "冯宝宝");
client.Encoding = Encoding.UTF8;
client.Headers.Add(HttpRequestHeader.ContentType, "application/json");
//string result = client.UploadString("http://localhost:51151/Api/Users/Login", "");
string result = client.UploadString("http://localhost:51151/Api/Users/WithStringParamNoFromBody", "");
}
catch (Exception ex)
{
}
后端WebApi代码如下:
[AllowAnonymous]
[HttpPost]
public IEnumerable<Users> WithStringParamNoFromBody(string name)
{
return _userList;
}
[AllowAnonymous]
[HttpPost]
public string Login(string account, string password)
{
if (account.Equals("冯宝宝") && password.Equals("7777"))
{
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(0,
account,
DateTime.Now,
DateTime.Now.AddMinutes(5),
true,
$"{account}&{password}",
FormsAuthentication.FormsCookiePath);
var result = new { Result = true, Ticket = FormsAuthentication.Encrypt(ticket) };
return JsonConvert.SerializeObject(result);
}
else
{
var result = new { Result = false };
return JsonConvert.SerializeObject(result);
}
}
关于“WebApi如何调用通用方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。