c# Winfom客户端 POST访问WebApi 方法

服务方法

 1 [AllowAnonymousAttribute]
 2         [HttpPost]
 3         public string PostWebName(dynamic login)
 4         {
 5             Dictionary<string, string> dict = new Dictionary<string, string>();
 6             dict.Add("姓名", Convert.ToString(login.name));
 7             dict.Add("密码", Convert.ToString(login.pwd));
 8
 9             return Tools.ConvertToJsonStr(dict);
10
11         }

客户端调用方法

1 Dictionary<string, string> dic = new Dictionary<string, string>();
2             dic.Add("name", "第一个参数");
3             dic.Add("pwd", "第二个参数");
4
5             string url = "http://localhost:10450/api/EmpInfo/PostWebName";
6
7             textBox2.Text = HttpPost(url, ObjectToJson(dic));
 1  string HttpPost(string URL, string Para)
 2         {
 3             // 创建HttpWebRequest对象
 4             HttpWebRequest httpRequest = (HttpWebRequest)WebRequest.Create(URL);
 5             httpRequest.Method = "POST";
 6            httpRequest.ContentType = "application/json";
 7             httpRequest.Headers.Add("Authorization", "lzsin");
 8
 9             byte[] bytes = Encoding.UTF8.GetBytes(Para);
10             using (Stream reqStream = httpRequest.GetRequestStream())
11             {
12                 reqStream.Write(bytes, 0, bytes.Length);
13                 reqStream.Flush();
14             }
15             try
16             {
17                 using (HttpWebResponse myResponse = (HttpWebResponse)httpRequest.GetResponse())
18                 {
19                     StreamReader sr = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);
20                     string responseString = sr.ReadToEnd();
21                     return responseString;
22                 }
23             }
24             catch (WebException ex)
25             {
26                 var res = (HttpWebResponse)ex.Response;
27                 StreamReader sr = new StreamReader(res.GetResponseStream(), Encoding.UTF8);
28                 string str = sr.ReadToEnd();
29                 return str;
30             }
31         }

原文地址:https://www.cnblogs.com/lzsin/p/12601738.html

时间: 2024-10-22 03:19:40

c# Winfom客户端 POST访问WebApi 方法的相关文章

c# Winfom客户端 GET 访问WebApi 方法

服务方法 1 [HttpGet] 2 public string GetWebName(string name,string pwd) 3 { 4 Dictionary<string, string> dict = new Dictionary<string, string>(); 5 dict.Add("姓名", Convert.ToString(name)); 6 dict.Add("密码", Convert.ToString(pwd))

html网页访问WebAPI中的方法遇到的问题

1.移动端访问远程服务时,建议使用WebAPI 2.用不同浏览器访问WebAPI时返回的文本格式是不同的,Chrome Firefox将在浏览器中以XML形式显示此列表,IE浏览器将获得Json格式的数据,区别的原因在于不同浏览器的请求头不同,分别为:application/XML和application/json 2.客户端发送Get请求访问WebAPI时,框架会查找以Get开头的方法进行匹配,当客户端发送Post请求时,框架会查找以Post开头的方法进行匹配 4.跨域访问WebAPI中的方法

浏览器跨域访问WebApi

webapi地址:wapapi.ebcbuy.com web地址:wapweb.ebcbuy.com 在默认情况下这两个域名属于两个不同的域,他们之间的交互存在跨域的问题,但因为他们都同属于一个二级域名下,所以通过简单的设置就能实现跨域行为,但是考虑到实际生产环境中往往会出现两个域名 完全不同的情况,所以这里不考虑这种特殊的情况,使用更通用的方法来解决跨域的问题. 首先在webapi上有如下所示一个接口 我们需要在我们的web站点下通过ajax方式调用这个接口 此时我们可以看到如下的结果 通过分

Hadoop中客户端和服务器端的方法调用过程

Java 动态代理一个简单的demo:(用以对比Hadoop中的动态代理) Hello接口: public interface Hello { void sayHello(String to); void print(String p); } Hello接口的实现类: public class HelloImpl implements Hello { public void sayHello(String to) { System.out.println("Say hello to "

silverlight调用MVC WebApi方法

1.创建ASP.NET MVC4 Web应用程序,选择WebAPI模板 2.添加silverlight项目 3.新建一个数据模型类,代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace NetMVCAPI.Models { public class Contact { public int Id { get; set; } public string

jQuery 跨域访问问题解决方法

浏览器端跨域访问一直是个问题, 多数研发人员对待js的态度都是好了伤疤忘了疼,所以病发的时候,时不时地都要疼上一疼.记得很久以前使用iframe 加script domain 声明,yahoo js util 的方式解决二级域名跨域访问的问题. 时间过得好快,又被拉回js战场时, 跨域问题这个伤疤又开疼了. 好在,有jquery帮忙,跨域问题似乎没那么难缠了.这次也借此机会对跨域问题来给刨根问底,结合实际的开发项目,查阅了相关资料,算是解决了跨域问题..有必要记下来备忘. 跨域的安全限制都是指浏

TortoiseSVN客户端安装及使用方法

一.客户端TortoiseSVN的安装 运行TortoiseSVN程序,点击Next,下面的截图顺序即为安装步骤: 二.客户端TortoiseSVN的使用方法 1. 签入源代码到SVN服务器 假如我们使用Visual Studio在文件夹StartKit中创建了一个项目,我们要把这个项目的源代码签入到SVN Server上的代码库中里,首先右键点击StartKit文件夹,这时候的右键菜单如下图所示: 点击Import,弹出下面的窗体,其中http://zt.net.henu.edu.cn 是服务

layui表单提交与ajax访问webapi

啊啊啊啊 这个东西实在很蛋疼啊 每次访问webapi就很老火 这里就一下  以后忘记的话就来查阅 不多说 直接开始 首先html页面 新建一个基于layui的form表单页面LayuiForm.cshtml(我的项目是基于mvc的 当然webform也是可以的  就不写了 个人习惯webform做前台的时候后台用一般处理程序.ashx来搭配). @{ Layout = null;} <!DOCTYPE html> <html><head> <meta name=&

解决SQL Server 阻止了对组件 &#39;Ad Hoc Distributed Queries&#39; 的 STATEMENT&#39;OpenRowset/OpenDatasource&#39; 的访问的方法

报错内容是:SQL  Server 阻止了对组件 'Ad Hoc Distributed Queries' 的  STATEMENT'OpenRowset/OpenDatasource'  的访问,因为此组件已作为此服务器安全配置的一部分而被关闭.系统管理员可以通过使用 sp_configure 启用 'Ad Hoc  Distributed Queries'.有关启用 'Ad Hoc Distributed Queries' 的详细信息,请参阅 SQL  Server 联机丛书中的 "外围应用