HubConnection class
Represents a connection to a SignalR Hub.
Properties
base |
Indicates the url of the HubConnection to the server. Sets a new url for the HubConnection. Note that the url can only be changed when the connection is in either the Disconnected or Reconnecting states. |
connection |
Represents the connection id of the HubConnection on the server. The connection id will be null when the connection is either in the disconnected state or if the negotiation step was skipped. |
keep |
Default interval at which to ping the server. The default value is 15,000 milliseconds (15 seconds). Allows the server to detect hard disconnects (like when a client unplugs their computer). The ping will happen at most as often as the server pings. If the server pings every 5 seconds, a value lower than 5 will ping every 5 seconds. |
server |
The server timeout in milliseconds. If this timeout elapses without receiving any messages from the server, the connection will be terminated with an error. The default timeout value is 30,000 milliseconds (30 seconds). |
state | Indicates the state of the HubConnection to the server. |
Methods
create(IConnection, ILogger, IHub |
|
invoke<T>(string, any[]) | Invokes a hub method on the server using the specified name and arguments. The Promise returned by this method resolves when the server indicates it has finished invoking the method. When the promise resolves, the server has finished invoking the method. If the server method returns a result, it is produced as the result of resolving the Promise. |
off(string) | Removes all handlers for the specified hub method. |
off(string, (args: any[]) => void) | Removes the specified handler for the specified hub method. You must pass the exact same Function instance as was previously passed to on(string, (args: any[]) => void). Passing a different instance (even if the function body is the same) will not remove the handler. |
on(string, (args: any[]) => void) | Registers a handler that will be invoked when the hub method with the specified method name is invoked. |
onclose((error?: Error) => void) | Registers a handler that will be invoked when the connection is closed. |
onreconnected((connection |
Registers a handler that will be invoked when the connection successfully reconnects. |
onreconnecting((error?: Error) => void) | Registers a handler that will be invoked when the connection starts reconnecting. |
send(string, any[]) | Invokes a hub method on the server using the specified name and arguments. Does not wait for a response from the receiver. The Promise returned by this method resolves when the client has sent the invocation to the server. The server may still be processing the invocation. |
start() | Starts the connection. |
stop() | Stops the connection. |
stream<T>(string, any[]) | Invokes a streaming hub method on the server using the specified name and arguments. |
Property Details
baseUrl
Indicates the url of the HubConnection to the server. Sets a new url for the HubConnection. Note that the url can only be changed when the connection is in either the Disconnected or Reconnecting states.
string baseUrl
Property Value
string
connectionId
Represents the connection id of the HubConnection on the server. The connection id will be null when the connection is either in the disconnected state or if the negotiation step was skipped.
string | null connectionId
Property Value
string | null
keepAliveIntervalInMilliseconds
Default interval at which to ping the server. The default value is 15,000 milliseconds (15 seconds). Allows the server to detect hard disconnects (like when a client unplugs their computer). The ping will happen at most as often as the server pings. If the server pings every 5 seconds, a value lower than 5 will ping every 5 seconds.
public keepAliveIntervalInMilliseconds: number
Property Value
number
serverTimeoutInMilliseconds
The server timeout in milliseconds. If this timeout elapses without receiving any messages from the server, the connection will be terminated with an error. The default timeout value is 30,000 milliseconds (30 seconds).
public serverTimeoutInMilliseconds: number
Property Value
number
state
Method Details
create(IConnection, ILogger, IHubProtocol, IRetryPolicy)
static function create(connection: IConnection, logger: ILogger, protocol: IHubProtocol, reconnectPolicy?: IRetryPolicy): HubConnection
Parameters
- connection
-
IConnection
- logger
- ILogger
- protocol
- IHubProtocol
- reconnectPolicy
- IRetryPolicy
Returns
invoke<T>(string, any[])
Invokes a hub method on the server using the specified name and arguments. The Promise returned by this method resolves when the server indicates it has finished invoking the method. When the promise resolves, the server has finished invoking the method. If the server method returns a result, it is produced as the result of resolving the Promise.
function invoke<T>(methodName: string, args: any[]): Promise<T>
Parameters
- methodName
-
string
The name of the server method to invoke.
- args
-
any[]
The arguments used to invoke the server method.
Returns
Promise<T>
A Promise that resolves with the result of the server method (if any), or rejects with an error.
off(string)
Removes all handlers for the specified hub method.
function off(methodName: string)
Parameters
- methodName
-
string
The name of the method to remove handlers for.
off(string, (args: any[]) => void)
Removes the specified handler for the specified hub method. You must pass the exact same Function instance as was previously passed to on(string, (args: any[]) => void). Passing a different instance (even if the function body is the same) will not remove the handler.
function off(methodName: string, method: (args: any[]) => void)
Parameters
- methodName
-
string
The name of the method to remove handlers for.
- method
-
(args: any[]) => void
The handler to remove. This must be the same Function instance as the one passed to on(string, (args: any[]) => void).
on(string, (args: any[]) => void)
Registers a handler that will be invoked when the hub method with the specified method name is invoked.
function on(methodName: string, newMethod: (args: any[]) => void)
Parameters
- methodName
-
string
The name of the hub method to define.
- newMethod
-
(args: any[]) => void
The handler that will be raised when the hub method is invoked.
onclose((error?: Error) => void)
Registers a handler that will be invoked when the connection is closed.
function onclose(callback: (error?: Error) => void)
Parameters
- callback
-
(error?: Error) => void
The handler that will be invoked when the connection is closed. Optionally receives a single argument containing the error that caused the connection to close (if any).
onreconnected((connectionId?: string) => void)
Registers a handler that will be invoked when the connection successfully reconnects.
function onreconnected(callback: (connectionId?: string) => void)
Parameters
- callback
-
(connectionId?: string) => void
The handler that will be invoked when the connection successfully reconnects.
onreconnecting((error?: Error) => void)
Registers a handler that will be invoked when the connection starts reconnecting.
function onreconnecting(callback: (error?: Error) => void)
Parameters
- callback
-
(error?: Error) => void
The handler that will be invoked when the connection starts reconnecting. Optionally receives a single argument containing the error that caused the connection to start reconnecting (if any).
send(string, any[])
Invokes a hub method on the server using the specified name and arguments. Does not wait for a response from the receiver. The Promise returned by this method resolves when the client has sent the invocation to the server. The server may still be processing the invocation.
function send(methodName: string, args: any[]): Promise<void>
Parameters
- methodName
-
string
The name of the server method to invoke.
- args
-
any[]
The arguments used to invoke the server method.
Returns
Promise<void>
A Promise that resolves when the invocation has been successfully sent, or rejects with an error.
start()
Starts the connection.
function start(): Promise<void>
Returns
Promise<void>
A Promise that resolves when the connection has been successfully established, or rejects with an error.
stop()
Stops the connection.
function stop(): Promise<void>
Returns
Promise<void>
A Promise that resolves when the connection has been successfully terminated, or rejects with an error.
stream<T>(string, any[])
Invokes a streaming hub method on the server using the specified name and arguments.
function stream<T>(methodName: string, args: any[]): IStreamResult<T>
Parameters
- methodName
-
string
The name of the server method to invoke.
- args
-
any[]
The arguments used to invoke the server method.
Returns
An object that yields results from the server as they are received.