前面已经介绍了机器人的事情,今天直接贴一下代码。

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using System.Net;
  11. using System.IO;
  12. using System.IO.Compression;
  13. using System.Text.RegularExpressions;
  14.  
  15. namespace 机器人
  16. {
  17. public partial class Form1 : Form
  18. {
  19. public Form1()
  20. {
  21. InitializeComponent();
  22. }
  23.  
  24. private void button1_Click(object sender, EventArgs e)
  25. {
  26. string paraUrlCoded = "{\"msgtype\":\"text\",\"text\":{\"content\":\"";
  27. paraUrlCoded += textBox2.Text;
  28. paraUrlCoded += "\"}}";
  29. Post(paraUrlCoded);
  30. }
  31.  
  32. private void button2_Click(object sender, EventArgs e)
  33. {
  34. string paraUrlCoded = "{\"msgtype\": \"link\", \"link\": {\"text\": \"我的博客:欢迎光临\", \"title\": \"推广博客啦,机器人开发者\", \"picUrl\": \"\", \"messageUrl\": \"http://www.cnblogs.com/left69/\"}}";
  35. Post(paraUrlCoded);
  36. }
  37.  
  38. private void Post(string paraUrlCoded)
  39. {
  40. string url = textBox1.Text;
  41. string strURL = url;
  42. System.Net.HttpWebRequest request;
  43. request = (System.Net.HttpWebRequest)WebRequest.Create(strURL);
  44. request.Method = "POST";
  45.  
  46. //判断是否必要性
  47. request.ContentType = "application/json;charset=UTF-8";
  48. //request.ContentType = "application/json;";
  49.  
  50. //添加cookie测试
  51. //Uri uri = new Uri(url);
  52. //Cookie cookie = new Cookie("Name", DateTime.Now.ToString()); // 设置key、value形式的Cookie
  53. //CookieContainer cookies = new CookieContainer();
  54. //cookies.Add(uri, cookie);
  55. //request.CookieContainer = cookies;
  56.  
  57. //发送请求的另外形式
  58. //request.Method = "POST";
  59. //request.ContentType = "application/x-www-form-urlencoded";
  60.  
  61. byte[] payload;
  62. payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded);
  63. request.ContentLength = payload.Length;
  64. Stream writer = request.GetRequestStream();
  65. writer.Write(payload, 0, payload.Length);
  66. writer.Close();
  67.  
  68. System.Net.HttpWebResponse response;
  69. response = (System.Net.HttpWebResponse)request.GetResponse();
  70. System.IO.Stream s;
  71. s = response.GetResponseStream();
  72. string StrDate = "";
  73. string strValue = "";
  74. StreamReader Reader = new StreamReader(s, Encoding.UTF8);
  75. while ((StrDate = Reader.ReadLine()) != null)
  76. {
  77. strValue += StrDate + "\r\n";
  78. }
  79.  
  80. //添加关闭相应
  81. Reader.Close();
  82. response.Close();
  83.  
  84. //改变返回结果形式以看全部提示
  85. label3.Text = strValue;
  86. // MessageBox.Show(strValue);
  87. }
  88. }
  89. }

  

程序源码的位置在这儿。http://files.cnblogs.com/files/wangkun1993/%E6%9C%BA%E5%99%A8%E4%BA%BA.7z

参考过的代码有:

发送HTTP请求 - a-dou - 博客园 http://www.cnblogs.com/a-dou/p/5151043.html

C# 发送Http协议 模拟 Post Get请求 - kaikaichao - 博客园 http://www.cnblogs.com/kaikaichao/p/5912806.html

钉钉 机器人接入 自定义webhook - 蓝辰进击者 - 博客园 http://www.cnblogs.com/left69/p/6483153.html

DingTalk机器人C#代码的更多相关文章

  1. QQ聊天机器人 Delphi代码

    QQ聊天机器人     前几日,看到杂志上有一篇关于开发QQ聊天机器人的文章.谈到了对QQ循环发送消息内容,感觉倒也很好玩,于是拿起Delphi开始了我的QQ聊天机器人之路. 首先要明白自己要做什么, ...

  2. Opengl创建机器人手臂代码示例

    /*******************************************************robot.cpp*基于opengl的机械手臂示例代码*s:机械臂逆时针旋转*S:机械臂 ...

  3. Office 365 机器人(Bot)开发入门指南 (新篇)

    最近在整理书稿时,发现我在2017年7月份写的这篇 Office 365 机器人(Bot)开发入门 的内容,因为相关平台的升级,已经完全不能体现当前的开发过程,所以我再专门写一篇新的开发入门指南给有兴 ...

  4. Python实现机器人聊天

    今天午休的时候,无意之中看了一篇博客,名字叫Python实现机器人,感觉挺有的意思的.于是用其写了一个简单的Python聊天,源码如下所示: # -*- coding: utf- -*- import ...

  5. SharpGL学习笔记(八) 矩阵堆栈和变换的综合例子: 机器人

    我们先引入关于"矩阵堆栈"的官方说法: OpenGL的矩阵堆栈指的就是内存中专门用来存放矩阵数据的某块特殊区域.实际上,在创建.装入.相乘模型变换和投影变换矩阵时,都已用到堆栈操作 ...

  6. 研发团队如何借助Gitlab来做代码review

    代码review是代码质量保障的手段之一,同时开发成员之间代码review也是一种技术交流的方式,虽然会占用一些时间,但对团队而言,总体是个利大于弊的事情.如何借助现有工具在团队内部形成代码revie ...

  7. Gitlab来做代码review

    Gitlab来做代码review 代码review是代码质量保障的手段之一,同时开发成员之间代码review也是一种技术交流的方式,虽然会占用一些时间,但对团队而言,总体是个利大于弊的事情.如何借助现 ...

  8. 使用图灵机器人api搭建微信聊天机器人php实现

    之前通过hook技术实现了微信pc端发送消息功能,如果在结合图灵机器人就能实现微信聊天机器人. 代码下载:http://blog.yshizi.cn/131.html 逻辑如下: 下面我简单介绍一下步 ...

  9. Python使用微信接入图灵机器人

    1.wxpy库介绍 wxpy 在 itchat 的基础上,通过大量接口优化提升了模块的易用性,并进行丰富的功能扩展. 文档地址:https://wxpy.readthedocs.io 从 PYPI 官 ...

随机推荐

  1. [独孤九剑]Oracle知识点梳理(二)数据库的连接

    本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...

  2. BZOJ4930: 棋盘

    BZOJ4930: 棋盘 https://lydsy.com/JudgeOnline/problem.php?id=4930 分析: 基本上就是游戏那道题加上费用流了,所以没啥好说的. 记得两边都是拆 ...

  3. LeetCode 336. Palindrome Pairs

    原题链接在这里:https://leetcode.com/problems/palindrome-pairs/ 题目: Given a list of unique words, find all p ...

  4. mysql之 xtrabackup原理、备份日志分析、备份信息获取

    一. xtrabackup备份恢复工作原理: extrabackup备份简要步骤 InnoDB引擎很大程度上与Oracle类似,使用redo,undo机制,XtraBackup在备份的时候,以read ...

  5. [转]移动H5前端性能优化指南

    移动H5前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网 ...

  6. bzoj 5092 [Lydsy1711月赛]分割序列——高维前缀和

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=5092 套路地弄一个前缀异或和,就变成 f[ i ]=max_{j=0}^{i} { s[ j ...

  7. 获得Oracke中刚插入的ID ---> GetInsertedID()

    (1)首先 需要创建序列: CREATE SEQUENCE SE_TD_POWER MINVALUE 1 NOMAXVALUE START WITH 1 INCREMENT BY 1 NOCYCLE ...

  8. linux下面的df命令

    linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 1.命令格式: df [选项] [文件] 2.命 ...

  9. Appium—python_ 安卓手机划屏幕操作

    开始的时候 不知道 python_unittest框架的命名规则,导致方法进不去,后来 改变方法名 能获取 # conding=utf- from appium import webdriver im ...

  10. PowerDesigner中CDM和PDM如何定义外键关系

    有A.B两张表(实体),各自有id作为主键,两表是一一对应关系.但略有不同: A表一条记录可以对应0或1条B表记录,B表一条记录必须对应唯一条A表记录. 这样的关系如何在CDM或PDM中定义? 在最后 ...