.NET集成DeveloperSharp实现http网络请求&与其它工具的比较

简介: 该内容介绍了一个支持.NET Core 2.0及以上和.NET Framework 4.0及以上的HTTP请求调用方法,主要讨论了POST和GET两种形式。POST请求较为常见,涉及调用地址、发送参数、HTTP请求头和编码格式设置。文中提供了一个使用DeveloperSharp库发送POST请求的C#代码示例,用于发送短信,其中`IU.HttpPost`方法用于执行POST请求。此外,还提到了`HttpPost`方法的参数和返回值说明。最后简要提及了GET请求,通常用于URL带有查询参数的情况,并给出一个简单的GET请求示例。

支持.Net Core2.0及以上,支持.Net Framework4.0及以上

http请求调用是开发中经常会用到的功能。在内,调用自有项目的Web Api等形式接口时会用到;在外,调用一些第三方功能接口时,也会用到,因为,这些第三方功能往往是通过http地址的形式提供的,比如:短信服务、在线翻译、地图服务、语音智能、等…

 

http请求调用,又分为Post与Get两种形式。

Post形式的请求相对复杂一些,也更常用,一旦弄明白它, Get形式一看便懂,故我们首先来看看Post形式的请求调用。

使用Post调用http,往往有四个参数需要设置:

(1)     调用地址

(2)     需要发送过去的参数

(3)     http请求头(如果有设置)

(4)     编码格式。常用的为:application/json

 

下面给出一个使用第三方链接“发送短信”的代码示例:

using DeveloperSharp.Framework.CoreUtility; //从NuGet引用DeveloperSharp包

using Newtonsoft.Json; //从NuGet引用Newtonsoft.Json包

--------------------------


       public static object SendMessage(string mobile, string code, string name)

       {

           //创建DeveloperSharp中的IUtility工具

           IUtility IU = new Utility();


           //调用地址

           string requestUrl = "https://prekaka.rainfn.com/kaka/api/v1/activity/uploadUserData";

           //需要发送的参数

           Dictionary<string, object> data = new Dictionary<string, object>

           {

               { "mobile",mobile },

               { "code",code},

               { "name",name}

           };


           //Post形式发送请求调用

           var responsesStr = IU.HttpPost(requestUrl, JsonConvert.SerializeObject(data), null, "application/json");

           object reData = JsonConvert.DeserializeObject<object>(responsesStr);

           return reData;

       }

上例因为没有设置“http请求头”,故HttpPost方法的第三个参数传值为null。

 

HttpPost方法的详细说明如下:

HttpPost(Async)

声明:string HttpPost(string Url, string ParamData = "", Dictionary<string, string> HeaderDic = null, string ContentType = "application/x-www-form-urlencoded");

用途:调用Http-Post请求

参数:(1string Url             --  调用请求的url地址

    (2string ParamData      --  提交的参数

    (3)Dictionary<string, string> HeaderDic  --  存放http头的键值对

    (4string ContentType   --  请求的编码格式,通常有application/x-www-form-urlencoded(默认设置)、multipart/form-data、application/json三种形式

返回:String   --  请求结果(-107开头表示出错)

 

 

最后,我们来说说Get形式的请求调用。

Get形式往往用于url后带问号“?N1=V1&N2=V2&N3=V3”这类的调用。这类调用的特点是:“需要发送的参数”直接挂在了“调用地址”后面。下面直接给出一个示例,你一看便知:

using DeveloperSharp.Framework.CoreUtility; //从NuGet引用DeveloperSharp包

--------------------------


     IUtility ui = new Utility();

     string r = ui.HttpGet("http://localhost:1416/Handler1.ashx?name=kyyk&age=100");

相关文章
|
2月前
|
Java
|
14天前
|
中间件 Go
Golang | Gin:net/http与Gin启动web服务的简单比较
总的来说,`net/http`和 `Gin`都是优秀的库,它们各有优缺点。你应该根据你的需求和经验来选择最适合你的工具。希望这个比较可以帮助你做出决策。
59 35
|
29天前
|
存储 监控 算法
基于 Python 哈希表算法的局域网网络监控工具:实现高效数据管理的核心技术
在当下数字化办公的环境中,局域网网络监控工具已成为保障企业网络安全、确保其高效运行的核心手段。此类工具通过对网络数据的收集、分析与管理,赋予企业实时洞察网络活动的能力。而在其运行机制背后,数据结构与算法发挥着关键作用。本文聚焦于 PHP 语言中的哈希表算法,深入探究其在局域网网络监控工具中的应用方式及所具备的优势。
66 7
|
4月前
|
Linux 网络性能优化 网络安全
Linux(openwrt)下iptables+tc工具实现网络流量限速控制(QoS)
通过以上步骤,您可以在Linux(OpenWrt)系统中使用iptables和tc工具实现网络流量限速控制(QoS)。这种方法灵活且功能强大,可以帮助管理员有效管理网络带宽,确保关键业务的网络性能。希望本文能够为您提供有价值的参考。
476 28
|
4月前
|
数据采集 人工智能 自然语言处理
FireCrawl:开源 AI 网络爬虫工具,自动爬取网站及子页面内容,预处理为结构化数据
FireCrawl 是一款开源的 AI 网络爬虫工具,专为处理动态网页内容、自动爬取网站及子页面而设计,支持多种数据提取和输出格式。
1043 19
FireCrawl:开源 AI 网络爬虫工具,自动爬取网站及子页面内容,预处理为结构化数据
|
4月前
|
网络协议 Unix Linux
深入解析:Linux网络配置工具ifconfig与ip命令的全面对比
虽然 `ifconfig`作为一个经典的网络配置工具,简单易用,但其功能已经不能满足现代网络配置的需求。相比之下,`ip`命令不仅功能全面,而且提供了一致且简洁的语法,适用于各种网络配置场景。因此,在实际使用中,推荐逐步过渡到 `ip`命令,以更好地适应现代网络管理需求。
128 11
|
5月前
|
人工智能 自然语言处理 Java
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
FastExcel 是一款基于 Java 的高性能 Excel 处理工具,专注于优化大规模数据处理,提供简洁易用的 API 和流式操作能力,支持从 EasyExcel 无缝迁移。
668 9
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
|
5月前
|
存储 安全 物联网
浅析Kismet:无线网络监测与分析工具
Kismet是一款开源的无线网络监测和入侵检测系统(IDS),支持Wi-Fi、Bluetooth、ZigBee等协议,具备被动监听、实时数据分析、地理定位等功能。广泛应用于安全审计、网络优化和频谱管理。本文介绍其安装配置、基本操作及高级应用技巧,帮助用户掌握这一强大的无线网络安全工具。
303 9
浅析Kismet:无线网络监测与分析工具
|
4月前
|
网络协议 安全 测试技术
Nping工具详解:网络工程师的瑞士军刀
### Nping工具详解:网络工程师的瑞士军刀 Nping是Nmap项目的一部分,支持TCP、UDP、ICMP和ARP等多种协议,用于生成和分析网络数据包。它提供灵活的命令行界面,适用于网络探测、安全测试和故障排除。本文介绍Nping的基础与高级用法,包括发送不同类型的网络请求、自定义TCP标志位、路由跟踪等,并通过实战案例展示其应用。掌握Nping有助于更好地理解和管理网络环境。 (239字符)
230 9
|
5月前
|
人工智能 自然语言处理 搜索推荐
Open Notebook:开源 AI 笔记工具,支持多种文件格式,自动转播客和生成总结,集成搜索引擎等功能
Open Notebook 是一款开源的 AI 笔记工具,支持多格式笔记管理,并能自动将笔记转换为博客或播客,适用于学术研究、教育、企业知识管理等多个场景。
361 0
Open Notebook:开源 AI 笔记工具,支持多种文件格式,自动转播客和生成总结,集成搜索引擎等功能