HPSocket.Net 5.8.8.2

There is a newer version of this package available.
See the version list below for details.
dotnet add package HPSocket.Net --version 5.8.8.2
NuGet\Install-Package HPSocket.Net -Version 5.8.8.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="HPSocket.Net" Version="5.8.8.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add HPSocket.Net --version 5.8.8.2
#r "nuget: HPSocket.Net, 5.8.8.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install HPSocket.Net as a Cake Addin
#addin nuget:?package=HPSocket.Net&version=5.8.8.2

// Install HPSocket.Net as a Cake Tool
#tool nuget:?package=HPSocket.Net&version=5.8.8.2

HPSocket.Net

Overview

the C# SDK for HP-Socket

.Net Framework Supported
  • .Net Framework 2.0+
  • .Net Core 2.0+
  • .Net 5.0+
  • .Net 6.0+
Platform supported
  • Windows 7+ x86/x64
  • Linux kernel 2.6.32+ x86/x64
  • mac OS 10.12+ x64
  • Raspberry Pi 4B

About macOS

HPSocket.Net now supports development using.net core2.0 +inosx 10.12 +

Libhpsocket4c.dylib in Nuget package is compiled from HP-Socket-for-macOS

Components List

Basic Components

Basic component is the original component provided by HP-Socket. For related usage, please refer to HP-Socket Doc

TCP
  • ITcpServer
  • ITcpAgent
  • ITcpClient
  • ITcpPullServer
  • ITcpPullAgent
  • ITcpPullClient
  • ITcpPackServer
  • ITcpPackAgent
  • ITcpPackClient
UDP
  • IUdpServer
  • IUdpClient
  • IUdpCast
  • IUdpArqServer
  • IUdpArqClient
  • IUdpNode
SSL
  • ISslServer
  • ISslAgent
  • ISslClient
  • ISslPullServer
  • ISslPullAgent
  • ISslPullClient
  • ISslPackServer
  • ISslPackAgent
  • ISslPackClient
HTTP
  • IHttpServer
  • IHttpsServer
  • IHttpAgent
  • IHttpsAgent
  • IHttpClient
  • IHttpsClient
  • IHttpSyncClient
  • IHttpsSyncClient
ThreadPool
  • ThreadPool

Extended components

  • ITcpPortForwarding
  • IHttpEasyServer
  • IHttpsEasyServer
  • IHttpEasyAgent
  • IHttpsEasyAgent
  • IHttpEasyClient
  • IHttpsEasyClient
  • IWebSocketServer
  • IWebSocketAgent

HPSocket.Net provides a TCP port forwarding component ITcpPortForwarding, 10 lines of code can complete TCP port forwarding.

HPSocket.Net currently provides 6 Easy components and 2 WebSocket components for easier processing of http / https / ws data packets. The basic http components provided by HP-Socket need to implement the data packets themselves. Complete acquisition, Easy component has done these processing, http / https Easy component is bound to the following events, when the event arrives, you can get the complete data packet.

  • OnEasyChunkData Complete packet event for http CHUNK message
  • OnEasyMessageData Complete packet event for http GET or POST message
  • OnEasyWebSocketMessageData Complete packet event for WebSocket message

WebSocket can also use the following two components directly

  • IWebSocketServer WebSocket Server
  • IWebSocketAgent WebSocket Client (Unlike other Agent components, the WebSocket Agent component does not support connecting to different WebSocket Servers, which means that all connections of the IWebSocketAgent component can only connect to the same server)

Instructions

  1. For the use of most components, please refer to the project in the demo directory.
  2. In addition to the Pack series model, the Agent series components provided by HPSocket.Net (including the ITcpPortForwarding component) support to setting HTTP or Socks5 proxy, which can be set in the manner ofList<IProxy>. Multiple proxies can be set at the same time, which will be used randomly, and can be mixed with HTTP and Socks5 proxy at the same time. For the usage method, refer to the demo of each Agent component.

Easy component event binding example

IHttpEasyServer
// Create HttpEasyServer instance
using(IHttpEasyServer httpServer = new HttpEasyServer())
{
    // ... other settings

    // Binding OnEasyMessageData event
    httpServer.OnEasyMessageData += (sender, id, data) => 
    {
        // The data parameter is a complete packet each time
        // ... Process data

        return HttpParseResult.Ok;
    };
}
IHttpEasyAgent
// Create HttpEasyAgent instance
using(IHttpEasyAgent httpAgent = new HttpEasyAgent())
{
    // ... other settings

    // Binding OnEasyMessageData event
    httpAgent.OnEasyMessageData += (sender, id, data) => 
    {
        // The data parameter is a complete packet each time
        // ... Process data

        return HttpParseResult.Ok;
    };
}
IHttpEasyClient
// Create HttpEasyClient instance
using(IHttpEasyClient httpClient = new HttpEasyClient())
{
    // ... other settings

    // Binding OnEasyMessageData event
    httpClient.OnEasyMessageData += (sender, data) => 
    {
        // The data parameter is a complete packet each time
        // ... Process data

        return HttpParseResult.Ok;
    };
}
Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.1 is compatible. 
.NET Framework net20 is compatible.  net30 is compatible.  net35 is compatible.  net35-client is compatible.  net40 is compatible.  net40-client is compatible.  net403 was computed.  net45 is compatible.  net451 is compatible.  net452 is compatible.  net46 is compatible.  net461 is compatible.  net462 is compatible.  net463 was computed.  net47 is compatible.  net471 is compatible.  net472 is compatible.  net48 is compatible.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on HPSocket.Net:

Package Downloads
Tkx.Common.SocketComponent

Package Description

T45TagLibrary

Package Description

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on HPSocket.Net:

Repository Stars
int2e/HPSocket.Net
the C# SDK for HP-Socket https://github.com/ldcsaa/HP-Socket
Version Downloads Last updated
6.0.1 442 2/29/2024
5.9.5.1 934 1/22/2024
5.9.5 671 1/21/2024
5.9.4.1 735 1/18/2024
5.9.4 1,128 1/7/2024
5.9.3.1 3,452 8/15/2023
5.8.8.3 5,326 11/28/2022
5.8.8.2 4,810 6/9/2022
5.8.8.1 3,229 4/21/2022
5.8.7.2 2,116 3/29/2022
5.8.7.1 2,326 3/9/2022
5.8.6 2,423 2/1/2022
5.8.6-beta1 1,500 1/14/2022
5.8.5.5 2,486 1/1/2022
5.8.5.4 1,572 12/30/2021
5.8.5.2 2,372 11/27/2021
5.8.5.1 3,534 11/20/2021
5.8.5 3,113 9/5/2021
5.8.4.1 3,830 8/9/2021
5.8.4 2,811 7/23/2021
5.8.4-beta2 1,669 7/11/2021
5.8.3.2 1,884 7/8/2021
5.8.3.1 3,450 5/15/2021
5.8.2.5 2,048 4/23/2021
5.8.2.4 1,782 4/23/2021
5.8.2.3 1,903 4/22/2021
5.8.2.2 1,684 4/21/2021
5.8.2.1 2,169 4/20/2021
5.8.2 3,251 3/13/2021
5.8.1.1 3,412 1/26/2021
5.8.1-beta3 1,784 1/17/2021
5.8.1-beta2 1,770 1/13/2021
5.8.1-beta1 1,929 12/14/2020
5.7.3.2 3,482 12/13/2020
5.7.3.1 2,052 12/13/2020
5.7.3 2,125 12/9/2020
5.7.3-beta1 1,901 11/15/2020
5.7.2.9 3,304 9/27/2020
5.7.2.8 2,402 9/13/2020
5.7.2 5,484 5/8/2020
5.7.2-rc2 1,859 4/28/2020
5.7.2-rc1 1,775 4/24/2020
5.7.1.13 2,267 4/23/2020
5.7.1.12 2,016 4/21/2020
5.7.1.11 2,140 4/12/2020
5.7.1.10 2,392 4/2/2020
5.7.1.9 2,241 3/27/2020
5.7.1.8 2,000 3/26/2020
5.7.1.5 3,000 2/27/2020
5.7.1.4 3,192 2/23/2020
5.7.1.3 1,983 2/23/2020
5.7.1.2 2,166 2/18/2020
5.7.1.1 2,587 1/9/2020