OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug
2.0.0-preview.2
Prefix Reserved
dotnet add package OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug --version 2.0.0-preview.2
NuGet\Install-Package OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug -Version 2.0.0-preview.2
<PackageReference Include="OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug" Version="2.0.0-preview.2" />
<PackageVersion Include="OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug" Version="2.0.0-preview.2" />
<PackageReference Include="OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug" />
paket add OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug --version 2.0.0-preview.2
#r "nuget: OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug, 2.0.0-preview.2"
#:package OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug@2.0.0-preview.2
#addin nuget:?package=OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug&version=2.0.0-preview.2&prerelease
#tool nuget:?package=OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug&version=2.0.0-preview.2&prerelease
OPC UA .NET Standard — HTTPS / WSS / REST binding
OPCFoundation.NetStandard.Opc.Ua.Bindings.Https adds the
https:// / opc.https:// (HTTPS-binary + HTTPS-JSON) and
wss:// / opc.wss:// (WSS-binary + WSS-JSON) listeners and
channels on top of OPCFoundation.NetStandard.Opc.Ua.Core. The
listeners are hosted by Kestrel. On net8.0+ it also provides an
opt-in Kestrel-hosted opc.tcp:// listener so a single IHost can
serve every OPC UA transport, and the OPC UA REST binding (Part 6
§G.3 OpenAPI Mapping) as ASP.NET Core Minimal-API endpoints mounted
into the same Kestrel pipeline.
Overview
The package contains:
HttpsTransportListener— single Kestrel-hosted listener serving HTTPS-binary, HTTPS-JSON, WSS-binary, and WSS-JSON on the same port, with content-type andSec-WebSocket-Protocolnegotiation.WssTransportChannel/WssJsonTransportChannel— client-side WebSocket channels for the two sub-protocols.HttpsTransportChannel/OpcHttpsTransportChannel— client-side HTTPS-binary channels.- WSS reverse-connect for both server-side outbound and client-side listener flows.
- The
AddHttpsTransport()/AddWssTransport()DI extensions onIOpcUaBuilderand specialized server builders for fluent registration into theITransportBindingRegistry. - An
IHttpsListenerStartupContributorextension hook for companion middleware that wants to mount on the shared Kestrel host. KestrelTcpTransportListener(net8.0+, opt-in) — hosts theopc.tcp://listener on Kestrel viaMicrosoft.AspNetCore.Connections.ConnectionHandlerinstead of the raw-socketTcpTransportListener(which ships inOpc.Ua.Coreand stays the default). Registered withAddKestrelOpcTcpTransport(); it has full feature parity with the raw-socket listener (forward endpoints, reverse-connect, TLS certificate hot-update, discovery).WebApiHttpsStartupContributor+MapWebApiEndpoints()(net8.0+, opt-in) — Minimal-API endpoints implementing the OPC UA REST binding (Part 6 §G.3 OpenAPI Mapping). Registered withAddWebApiTransport(); NativeAOT-compatible, no MVC reflection.
Getting started
Reference this package directly in every application that enables HTTPS, WSS, Kestrel-hosted OPC TCP, or the REST binding. Server feature packages do not pull this optional binding transitively.
using Microsoft.Extensions.DependencyInjection;
using Opc.Ua;
services
.AddOpcUa()
.AddOpcTcpTransport()
.AddHttpsTransport() // https:// + opc.https://
.AddWssTransport(); // wss:// + opc.wss://
// Optional (net8.0+): host opc.tcp:// on Kestrel too, so a single
// IHost serves opc.tcp, opc.https, and opc.wss. Call AFTER
// AddOpcTcpTransport(); last-writer-wins per URI scheme.
services
.AddOpcUa()
.AddOpcTcpTransport()
.AddKestrelOpcTcpTransport();
OPC UA REST binding (Part 6 §G.3 OpenAPI Mapping)
On net8.0+ the package also exposes every OPC UA service as a
POST /<service> Minimal-API endpoint, implementing the OPC UA
OpenAPI Mapping
(profile/2338). Bodies use the standard OPC UA JSON encoding from
Part 6 §5.4; both the Compact flavour (default; mandatory per
§5.4.9) and Verbose are negotiated via the
application/json; encoding=compact|verbose media-type parameter on
Content-Type and Accept.
The REST surface is additive: it mounts into the same Kestrel
pipeline as the binary + opcua+uajson bindings so a single port
serves them all simultaneously. Discovery (GetEndpoints) emits an
OpenAPI twin per SecurityMode.None HTTPS endpoint with
TransportProfileUri = Profiles.HttpsOpenApiTransport.
services
.AddOpcUa()
.AddHttpsTransport()
.AddWebApiTransport() // adds the REST endpoints
.AddWebApiAnonymousAuth(); // or AddWebApiBearerAuth(...) /
// AddWebApiBasicAuth(...) /
// AddWebApiMutualTlsAuth()
The companion WSS sub-profile opcua+openapi (profile/2339) is
provided by WebApiWssTransportChannel (client) and
HttpsTransportListener.AcceptWebSocketOpenApiAsync (server).
The binding is <IsAotCompatible>true</IsAotCompatible> on net10 —
the endpoint surface uses Minimal-API MapPost calls bound to
explicit RequestDelegate thunks so the trimmer can see every
generic instantiation at compile time. No
[UnconditionalSuppressMessage] attributes.
Target frameworks
net472, net48, netstandard2.1, net8.0, net9.0, net10.0.
The opt-in Kestrel-hosted opc.tcp:// listener
(AddKestrelOpcTcpTransport()) and the REST binding
(AddWebApiTransport()) are available on net8.0+ only — the
ASP.NET Core ConnectionContext and Minimal-API surfaces they rely
on are not available on the .NET Framework / netstandard targets,
where the default raw-socket opc.tcp listener remains the right
choice and REST is unavailable.
Additional documentation
See the main repository README and the Transport Profiles guide for the full URI scheme matrix, the REST binding guide for the full REST mapping table / authentication models / hosting modes, the Reverse Connect guide, and the Profiles overview.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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 is compatible. 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. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| .NET Framework | 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. |
-
.NETFramework 4.7.2
- BitFaster.Caching (>= 2.6.0)
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.AspNetCore.Connections.Abstractions (>= 2.3.11)
- Microsoft.AspNetCore.Hosting (>= 2.3.11)
- Microsoft.AspNetCore.Http (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel.Core (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel.Https (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets (>= 2.3.11)
- Microsoft.AspNetCore.WebSockets (>= 2.3.11)
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.10)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- Microsoft.Bcl.TimeProvider (>= 10.0.10)
- Microsoft.Extensions.Configuration (>= 10.0.10)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Configuration.EnvironmentVariables (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Diagnostics (>= 10.0.10)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Http (>= 10.0.10)
- Microsoft.Extensions.Http.Resilience (>= 10.8.0)
- Microsoft.Extensions.Logging (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Options (>= 10.0.10)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10)
- OPCFoundation.NetStandard.Opc.Ua.Core.Debug (>= 2.0.0-preview.2)
- System.Buffers (>= 4.6.1)
- System.Collections.Immutable (>= 9.0.0)
- System.Diagnostics.DiagnosticSource (>= 10.0.10)
- System.Formats.Asn1 (>= 10.0.10)
- System.Memory (>= 4.6.3)
- System.Reflection.Metadata (>= 9.0.0)
- System.Runtime.CompilerServices.Unsafe (>= 6.1.2)
- System.Security.Cryptography.Cng (>= 5.0.0)
- System.Text.Json (>= 10.0.10)
- System.Threading.Channels (>= 10.0.10)
- System.Threading.RateLimiting (>= 10.0.10)
- System.Threading.Tasks.Extensions (>= 4.6.3)
-
.NETFramework 4.8
- BitFaster.Caching (>= 2.6.0)
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.AspNetCore.Connections.Abstractions (>= 2.3.11)
- Microsoft.AspNetCore.Hosting (>= 2.3.11)
- Microsoft.AspNetCore.Http (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel.Core (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel.Https (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets (>= 2.3.11)
- Microsoft.AspNetCore.WebSockets (>= 2.3.11)
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.10)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- Microsoft.Bcl.TimeProvider (>= 10.0.10)
- Microsoft.Extensions.Configuration (>= 10.0.10)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Configuration.EnvironmentVariables (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Diagnostics (>= 10.0.10)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Http (>= 10.0.10)
- Microsoft.Extensions.Http.Resilience (>= 10.8.0)
- Microsoft.Extensions.Logging (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Options (>= 10.0.10)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10)
- OPCFoundation.NetStandard.Opc.Ua.Core.Debug (>= 2.0.0-preview.2)
- System.Buffers (>= 4.6.1)
- System.Collections.Immutable (>= 9.0.0)
- System.Diagnostics.DiagnosticSource (>= 10.0.10)
- System.Formats.Asn1 (>= 10.0.10)
- System.Memory (>= 4.6.3)
- System.Reflection.Metadata (>= 9.0.0)
- System.Runtime.CompilerServices.Unsafe (>= 6.1.2)
- System.Security.Cryptography.Cng (>= 5.0.0)
- System.Text.Json (>= 10.0.10)
- System.Threading.Channels (>= 10.0.10)
- System.Threading.RateLimiting (>= 10.0.10)
- System.Threading.Tasks.Extensions (>= 4.6.3)
-
.NETStandard 2.1
- BitFaster.Caching (>= 2.6.0)
- Microsoft.AspNetCore.Connections.Abstractions (>= 2.3.11)
- Microsoft.AspNetCore.Hosting (>= 2.3.11)
- Microsoft.AspNetCore.Http (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel.Core (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel.Https (>= 2.3.11)
- Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets (>= 2.3.11)
- Microsoft.AspNetCore.WebSockets (>= 2.3.11)
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.10)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- Microsoft.Bcl.TimeProvider (>= 10.0.10)
- Microsoft.Extensions.Configuration (>= 10.0.10)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Configuration.EnvironmentVariables (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Diagnostics (>= 10.0.10)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Http (>= 10.0.10)
- Microsoft.Extensions.Http.Resilience (>= 10.8.0)
- Microsoft.Extensions.Logging (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Options (>= 10.0.10)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10)
- OPCFoundation.NetStandard.Opc.Ua.Core.Debug (>= 2.0.0-preview.2)
- System.Collections.Immutable (>= 9.0.0)
- System.Diagnostics.DiagnosticSource (>= 10.0.10)
- System.Formats.Asn1 (>= 10.0.10)
- System.Reflection.Metadata (>= 9.0.0)
- System.Runtime.CompilerServices.Unsafe (>= 6.1.2)
- System.Security.Cryptography.Cng (>= 5.0.0)
- System.Text.Json (>= 10.0.10)
- System.Threading.Channels (>= 10.0.10)
- System.Threading.RateLimiting (>= 10.0.10)
-
net10.0
- BitFaster.Caching (>= 2.6.0)
- Microsoft.AspNetCore.Authentication.Certificate (>= 10.0.10)
- Microsoft.AspNetCore.Authentication.JwtBearer (>= 10.0.10)
- Microsoft.Bcl.TimeProvider (>= 10.0.10)
- Microsoft.Extensions.Http.Resilience (>= 10.8.0)
- OPCFoundation.NetStandard.Opc.Ua.Core.Debug (>= 2.0.0-preview.2)
-
net8.0
- BitFaster.Caching (>= 2.6.0)
- Microsoft.AspNetCore.Authentication.Certificate (>= 8.0.29)
- Microsoft.AspNetCore.Authentication.JwtBearer (>= 8.0.29)
- Microsoft.Bcl.TimeProvider (>= 10.0.10)
- Microsoft.Extensions.Configuration (>= 10.0.10)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Diagnostics (>= 10.0.10)
- Microsoft.Extensions.Http (>= 10.0.10)
- Microsoft.Extensions.Http.Resilience (>= 10.8.0)
- Microsoft.Extensions.Logging (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Options (>= 10.0.10)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10)
- OPCFoundation.NetStandard.Opc.Ua.Core.Debug (>= 2.0.0-preview.2)
- System.Collections.Immutable (>= 9.0.0)
- System.Diagnostics.DiagnosticSource (>= 10.0.10)
- System.Formats.Asn1 (>= 10.0.10)
- System.Security.Cryptography.Cng (>= 5.0.0)
- System.Text.Json (>= 10.0.10)
- System.Threading.Channels (>= 10.0.10)
- System.Threading.RateLimiting (>= 10.0.10)
-
net9.0
- BitFaster.Caching (>= 2.6.0)
- Microsoft.AspNetCore.Authentication.Certificate (>= 9.0.18)
- Microsoft.AspNetCore.Authentication.JwtBearer (>= 9.0.18)
- Microsoft.Bcl.TimeProvider (>= 10.0.10)
- Microsoft.Extensions.Configuration (>= 10.0.10)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Diagnostics (>= 10.0.10)
- Microsoft.Extensions.Http (>= 10.0.10)
- Microsoft.Extensions.Http.Resilience (>= 10.8.0)
- Microsoft.Extensions.Logging (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Options (>= 10.0.10)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10)
- OPCFoundation.NetStandard.Opc.Ua.Core.Debug (>= 2.0.0-preview.2)
- System.Diagnostics.DiagnosticSource (>= 10.0.10)
- System.Formats.Asn1 (>= 10.0.10)
- System.Security.Cryptography.Cng (>= 5.0.0)
- System.Text.Json (>= 10.0.10)
- System.Threading.Channels (>= 10.0.10)
- System.Threading.RateLimiting (>= 10.0.10)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on OPCFoundation.NetStandard.Opc.Ua.Bindings.Https.Debug:
| Package | Downloads |
|---|---|
|
OPCFoundation.NetStandard.Opc.Ua.WotCon.Server.Debug
OPC UA WoT Connectivity 1.1 server class library — hosts the OPC 10100-1 v1.02 asset-management surface and the registry-first materialization runtime. |
|
|
OPCFoundation.NetStandard.Opc.Ua.Lds.Server.Debug
OPC UA Local Discovery Server (LDS / LDS-ME) Class Library |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.0-preview.2 | 48 | 8/24/2026 |
| 1.5.378.156 | 432 | 7/10/2026 |
| 1.5.378.152 | 426 | 6/25/2026 |
| 1.5.378.145 | 421 | 5/21/2026 |
| 1.5.378.134 | 474 | 3/26/2026 |
| 1.5.378.106 | 512 | 1/28/2026 |
| 1.5.378.65 | 770 | 12/18/2025 |
| 1.5.378.10-preview | 453 | 11/18/2025 |
| 1.5.378.8-preview | 278 | 11/14/2025 |
| 1.5.377.22 | 900 | 11/14/2025 |
| 1.5.377.21 | 858 | 9/22/2025 |
| 1.5.377.11-preview | 238 | 9/4/2025 |
| 1.5.376.244 | 831 | 7/31/2025 |
| 1.5.376.235 | 801 | 6/26/2025 |
| 1.5.376.213 | 866 | 4/23/2025 |
| 1.5.375.457 | 1,076 | 2/26/2025 |
| 1.5.375.443 | 864 | 1/31/2025 |
| 1.5.374.176 | 700 | 2/13/2025 |
| 1.5.374.168 | 720 | 1/24/2025 |