当前位置: 首页 > news >正文

c#实现BPM系统网络传输接口,http协议,post

BPM通过http协议实现网络传输,语言使用.net(c#),在这里只提供一个接口,具体代码如下,请参照:

public string MakeRequest(string parameters)

 {
    ServicePointManager.ServerCertificateValidationCallback = new         System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);//验证服务器证书回调自动验证
            var request = (HttpWebRequest)WebRequest.Create(EndPoint + parameters);

            request.Method = Method.ToString();
            request.ContentLength = 0;
            request.ContentType = ContentType;

            if (!string.IsNullOrEmpty(PostData) && Method == HttpVerb.POST)//如果传送的数据不为空,并且方法是post
            {
                var encoding = new UTF8Encoding();
                var bytes = Encoding.GetEncoding("utf-8").GetBytes(PostData);//编码方式按需求进行更改,UTF-8
                request.ContentLength = bytes.Length;
             
                using (var writeStream = request.GetRequestStream())
                {
                    writeStream.Write(bytes, 0, bytes.Length);
                }
            }

            if (!string.IsNullOrEmpty(PostData) && Method == HttpVerb.PUT)//如果传送的数据不为空,并且方法是put
            {
                var encoding = new UTF8Encoding();
                var bytes = Encoding.GetEncoding("utf-8").GetBytes(PostData);//编码方式按需求进行更改,UTF-8
                request.ContentLength = bytes.Length;

                using (var writeStream = request.GetRequestStream())
                {
                    writeStream.Write(bytes, 0, bytes.Length);
                }
            }
            using (var response = (HttpWebResponse)request.GetResponse())
            {
                var responseValue = string.Empty;

                if (response.StatusCode != HttpStatusCode.OK)
                {
                    var message = String.Format("Request failed. Received HTTP {0}", response.StatusCode);
                    throw new ApplicationException(message);
                }

                // grab the response
                using (var responseStream = response.GetResponseStream())
                {
                    if (responseStream != null)
                        using (var reader = new StreamReader(responseStream))
                        {
                            responseValue = reader.ReadToEnd();
                        }
                }

                return responseValue;
            }
        }

以上代码为基于个人BPM程序所提供的http协议实现接口,如果有具体需求可在评论区提出,大家可以起讨论。

http://www.lryc.cn/news/358952.html

相关文章:

  • 如何修改开源项目中发现的bug?
  • 结构设计模式 - 代理设计模式 - JAVA
  • 企业了解这些cad图纸加密方法,再也不怕图纸被盗了!
  • # 详解 JS 中的事件循环、宏/微任务、Primise对象、定时器函数,以及其在工作中的应用和注意事项
  • 神经网络与深度学习——第14章 深度强化学习
  • centOS 编译C/C++
  • java——网络原理初识
  • js怎么判断是否为手机号?js格式校验方法
  • 深入理解Java中的方法重载:让代码更灵活的秘籍
  • 鸿蒙ArkTS声明式开发:跨平台支持列表【显隐控制】 通用属性
  • 每日一题——Java编程练习题
  • java编辑器中如何调试程序?
  • 第四范式Q1业务进展:驰而不息 用科技锻造不朽价值
  • SpringBoot整合Kafka的快速使用教程
  • 低边驱动与高边驱动
  • 【C++】入门(二):引用、内联、auto
  • 编程学习 (C规划) 6 {24_4_18} 七 ( 简单扫雷游戏)
  • 【AI】llama-fs的 安装与运行
  • Android NDK系列(五)内存监控
  • 软件设计师,下午题 ——试题六
  • 《Kubernetes部署篇:基于麒麟V10+ARM64架构部署harbor v2.4.0镜像仓库》
  • 远程工作/线上兼职网站整理(数字游民友好)
  • elasticsearch7.15实现用户输入自动补全
  • 掌握正则表达式的力量:全方位解析PCRE的基础与进阶技能
  • FastFM库,一款强大神奇的Python系统分析预测的工具
  • R语言绘图 --- 饼状图(Biorplot 开发日志 --- 2)
  • 用于日常任务的实用 Python 脚本
  • 7-Zip是什么呢
  • Satellite Stereo Pipeline学习
  • linux-gpio