我有一个预警消息接收调用的文档,需要实现接口数据调用和返回。请见下面的文档。需要用C#做一个demo程序。
5条回答 默认 最新
- 「已注销」 2023-03-13 11:29关注
参考GPT和自己的思路:以下是使用C#实现http协议的接口接收数据的示例程序:
using System; using System.Net; using System.IO; using System.Text; using System.Web.Script.Serialization; namespace HttpPostExample { class Program { static void Main(string[] args) { string url = "http://112.124.23.63:1888/ai/message"; string jsonString = "{\"rtspUrl\":\"rtsp://192.168.2.77:11100/live\",\"boxId\":\"80\",\"type\":\"11\",\"typeName\":\"禁区闯入\",\"boxName\":\"加油站\",\"deviceName\":\"卸油区\",\"GBID\":\"60082006\",\"deviceId\":\"exghlou346lk\",\"indexCode\":\"2850063219\",\"enterName\":\"xx科技\",\"enterCode\":\"3006259\",\"signBigAvatar\":\"09xgb…xcv12\",\"signAvatar\":\"09xgb…xcv12\",\"signTime\":\"2022-12-05 15:12:03\",\"channelNo\":\"83\",\"x\":\"62\",\"y\":\"500\",\"w\":\"180\",\"h\":\"89\",\"messagerType\":\"\",\"eBike\":\"1\",\"smoke\":\"1\",\"fire\":\"1\",\"isExist\":\"1\",\"ext\":\"1\",\"tanker\":\"2\",\"sudire\":\"2\",\"fireControl\":\"2\",\"cover\":\"2\",\"licensePlateNumber\":\"皖AA82G7\",\"illegalParking\":\"1\",\"age\":\"28\",\"gender\":\"0\",\"glasses\":\"1\",\"mask\":\"1\"}"; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = "POST"; request.ContentType = "application/json"; byte[] byteArray = Encoding.UTF8.GetBytes(jsonString); request.ContentLength = byteArray.Length; using (Stream streamWriter = request.GetRequestStream()) { streamWriter.Write(byteArray, 0, byteArray.Length); } try { HttpWebResponse response = (HttpWebResponse)request.GetResponse(); StreamReader reader = new StreamReader(response.GetResponseStream()); string responseString = reader.ReadToEnd(); Console.WriteLine(responseString); } catch (WebException ex) { Console.WriteLine("An error occurred: " + ex.Message); } Console.ReadLine(); } } }
用HttpWebRequest对象创建了一个POST请求,设置了Content-Type为"application/json",并将JSON字符串写入请求流中。接下来,我们发送请求并等待响应。最后,我们从响应流中读取响应字符串并将其打印到控制台上。
值得注意的是,在此示例程序中,我们将JSON字符串硬编码为一个C#字符串。在实际应用中,你需要根据具体情况动态生成JSON字符串,例如使用JSON库(例如Json.NET)或JavaScriptSerializer类来序列化C#对象为JSON字符串。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
- ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
- ¥16 mybatis的代理对象无法通过@Autowired装填
- ¥15 可见光定位matlab仿真
- ¥15 arduino 四自由度机械臂
- ¥15 wordpress 产品图片 GIF 没法显示
- ¥15 求三国群英传pl国战时间的修改方法
- ¥15 matlab代码代写,需写出详细代码,代价私
- ¥15 ROS系统搭建请教(跨境电商用途)
- ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。