c语言调用按钮api写web框架,cs端调用webApi

public class Httphelper

{

public static string Post1(string url, string postString)

{

using (WebClient webClient = new WebClient())

{

byte[] postData = Encoding.UTF8.GetBytes(postString);//编码,

webClient.Headers.Add("Content-Type", "application/json");//采取POST方式必须加的header,如果改为GET方式的话就去掉这句话即可

byte[] responseData = webClient.UploadData(url, "POST", postData);//得到返回字符流

string srcString = Encoding.UTF8.GetString(responseData);//解码

return srcString;

}

}

public static string Post(string url, string postData)

{

string result = "";

HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);

req.Method = "POST";

req.ContentType = "application/json";

byte[] data = Encoding.UTF8.GetBytes(postData);

req.ContentLength = data.Length;

//req.Timeout = 30000;

using (Stream reqStream = req.GetRequestStream())

{

reqStream.Write(data, , data.Length);

reqStream.Close();

}

HttpWebResponse resp = (HttpWebResponse)req.GetResponse();

Stream stream = resp.GetResponseStream();

//获取响应内容

using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))

{

result = reader.ReadToEnd();

}

return result;

}

}

HttpClient 调用

///

/// post 同步

///

///

///

///

public static string Post(string url, string postData)

{

try

{

using (HttpClient _httpClient = new HttpClient())

{

StringContent httpClient = new StringContent(postData, Encoding.UTF8, "application/json");

var response = _httpClient.PostAsync(url, httpClient).Result;

string jsonstr = response.Content.ReadAsStringAsync().Result;

return jsonstr;

}

}

catch (Exception ex)

{

_logger.LogError(string.Format("Api调用异常--url【{0}】,参数【{1}】", url, postData), ex);

return "";

}

}

///

/// post 异步

///

///

///

///

public static async void PostAsync(string url, string postData)

{

try

{

using (HttpClient _httpClient = new HttpClient())

{

StringContent httpClient = new StringContent(postData, Encoding.UTF8, "application/json");

var response = await _httpClient.PostAsync(url, httpClient);

string jsonstr = await response.Content.ReadAsStringAsync();

}

}

catch (Exception ex)

{

_logger.LogError(string.Format("Api调用异常--url【{0}】,参数【{1}】", url, postData), ex);

}

}

cs端调用Ajax

private static string Descoder() { //ajax地址 string MealFilePath = "http://***/user/SetWebsite.a ...

跨域调用webapi web端跨域调用webapi

web端跨域调用webapi   在做Web开发中,常常会遇到跨域的问题,到目前为止,已经有非常多的跨域解决方案. 通过自己的研究以及在网上看了一些大神的博客,写了一个Demo 首先新建一个webap ...

web端跨域调用webapi

在做Web开发中,常常会遇到跨域的问题,到目前为止,已经有非常多的跨域解决方案. 通过自己的研究以及在网上看了一些大神的博客,写了一个Demo 首先新建一个webapi的程序,如下图所示: 由于微软已 ...

web端跨域调用webapi(转)

在做Web开发中,常常会遇到跨域的问题,到目前为止,已经有非常多的跨域解决方案. 通过自己的研究以及在网上看了一些大神的博客,写了一个Demo 首先新建一个webapi的程序,如下图所示: 由于微软已 ...

WebApi接口 - 如何在应用中调用webapi接口

很高兴能再次和大家分享webapi接口的相关文章,本篇将要讲解的是如何在应用中调用webapi接口:对于大部分做内部管理系统及类似系统的朋友来说很少会去调用别人的接口,因此可能在这方面存在一些困惑,希 ...

跨域调用webapi

web端跨域调用webapi   在做Web开发中,常常会遇到跨域的问题,到目前为止,已经有非常多的跨域解决方案. 通过自己的研究以及在网上看了一些大神的博客,写了一个Demo 首先新建一个webap ...

跨域学习笔记1--跨域调用webapi

在做Web开发中,常常会遇到跨域的问题,到目前为止,已经有非常多的跨域解决方案. 通过自己的研究以及在网上看了一些大神的博客,写了一个Demo 首先新建一个webapi的程序,如下图所示: 由于微软已 ...

用C#基于WCF创建TCP的Service供Client端调用

本文将详细讲解用C#基于WCF创建TCP的Service供Client端调用的详细过程 1):首先创建一个Windows Service的工程 2):生成的代码工程结构如下所示 3):我们将Servi ...

.NET Core 下调用WebAPI

前言 今天我们介绍多种客户端调用WebApi的方式,可以是原生写的,也可以借助.NET 框架下的其他HTTP库.我们一起来看看它们之间的一些异同吧- RestSharp 首先要介绍的就是这款REST ...

随机推荐

当 IDENTITY_INSERT 设置为 OFF 时,不能向表 中的标识列插入显式值错误的解决方法

一个主键.两个外键,把两个外键改为非空就行了. CREATE TABLE [dbo].[User_Compare]( ,) NOT NULL, [UserId] [int] NOT NULL, [Pa ...

STL MAP 反序迭代

ITS_NOTICE_MAP::reverse_iterator it = noticeMap.rbegin(); for ( ; it != noticeMap.rend(); ++it ) { I ...

ring0和ring3的区别

现在探讨内核程序和应用程序之间的本质区别.除了能用WDK编写内核程序和阅读一部分Windows的内核代码之外,我们还需要了解它们的本质是什么,它们和我们熟悉的应用程序有什么区别. Intel的x86处 ...

HDU 3078 Network(LCA dfs)

Network [题目链接]Network [题目类型]LCA dfs &题意: 给出n个点的权值,m条边,2种操作 0 u num,将第u个点的权值改成num k u v,询问u到v这条路上 ...

Windows10 VS2017 C++ Server Socket简单服务器端与客户端

服务端: #include "pch.h" #include #include #include

oracle 查看被锁表 及解除锁定

查看 哪些表 被锁了 SELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$ ...

Python基础之好玩的字符串格式化之类C风格

今天白月黑羽和大家说说字符串格式化,在python3中,字符串格式化主要有2种方法,今天先和大家介绍类C风格的printf. printf 风格 这种方式 和 传统的C语言printf函数使用一样的格 ...

Spring MVC 常用Jar包

spring:http://maven.springframework.org/release/org/springframework/spring/ jackson:http://repo1.mav ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值