[fix]修正UdpServer在接收广播时连续启动接收的错误,在StarAgent中,此时可能收到广播包,SocketFlags是Broadcast,需要清空,否则报错“参考的对象类型不支持尝试的操作”; 无需设置SocketOptionName.PacketInformation,在ReceiveMessageFromAsync时会自动设置,并且支持ipv6;
石头 authored at 2024-10-10 00:36:00 石头 committed at 2024-10-10 00:45:43
807.00 B
X
using NewLife.Http;

namespace Zero.HttpServer;

/// <summary>自定义控制器。包含多个服务</summary>
internal class MyHttpHandler : IHttpHandler
{
    public void ProcessRequest(IHttpContext context)
    {
        // 获取请求参数
        var name = context.Parameters["name"];

        var html = $"<h2>你好,<span color=\"red\">{name}</span></h2>";

        // 支持文件上传
        var files = context.Request.Files;
        if (files != null && files.Length > 0)
        {
            foreach (var file in files)
            {
                file.SaveToFile();
                html += $"<br />文件:{file.FileName} 大小:{file.Length} 类型:{file.ContentType}";
            }
        }

        // 设置响应结果
        context.Response.SetResult(html);
    }
}