以下是一个使用WinForm处理POST请求并响应的例子:

using System;
using System.Collections.Generic;
using System.Net;
using System.Windows.Forms;

namespace WinFormHttpPostExample
{
    public partial class MainForm : Form
    {
        public MainForm()
        {
            InitializeComponent();
        }

        private void MainForm_Load(object sender, EventArgs e)
        {
            // 启动一个本地服务器,监听特定端口
            var listener = new HttpListener();
            listener.Prefixes.Add("http://localhost:8080/");
            listener.Start();

            // 在新线程中接受来自客户端的请求
            var context = listener.GetContextAsync().Result;

            // 从请求中获取POST数据
            var request = context.Request;
            var postData = new List<string>();
            using (var reader = new System.IO.StreamReader(request.InputStream, request.ContentEncoding))
            {
                var requestBody = reader.ReadToEnd();
                postData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(requestBody);
            }

            // 构造响应数据
            var responseData = new { Message = "POST请求已成功处理", Data = postData };

            // 将响应数据发送回客户端
            var response = context.Response;
            response.ContentType = "application/json";
            response.StatusCode = (int)HttpStatusCode.OK;
            using (var writer = new System.IO.StreamWriter(response.OutputStream))
            {
                writer.Write(Newtonsoft.Json.JsonConvert.SerializeObject(responseData));
            }

            // 关闭服务器
            listener.Stop();
        }
    }
}

使用此代码,当运行WinForm应用程序并加载主窗体时,它将启动一个本地服务器,并在端口8080上监听来自客户端的请求。当收到POST请求时,它将从请求中获取传递的字符串列表参数,并构造一个包含响应数据的JSON对象。然后,它将JSON数据作为响应发送回客户端。

请注意,此示例使用了Json.NET库来序列化和反序列化JSON数据。您可以使用NuGet包管理器将其添加到您的项目中

对winform post请求传递stringlist 参数 做出响应处理 给个例子

原文地址: https://www.cveoy.top/t/topic/hYj6 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录