make params configurable
This commit is contained in:
parent
9e2dab6ed4
commit
d8f1e6b0e1
@ -245,7 +245,7 @@ export class WebsocketProvider extends Observable {
|
|||||||
* @param {object} opts
|
* @param {object} opts
|
||||||
* @param {boolean} [opts.connect]
|
* @param {boolean} [opts.connect]
|
||||||
* @param {awarenessProtocol.Awareness} [opts.awareness]
|
* @param {awarenessProtocol.Awareness} [opts.awareness]
|
||||||
* @param {Object<string,string>} [opts.params]
|
* @param {Object<string,string>} [opts.params] specify url parameters
|
||||||
* @param {typeof WebSocket} [opts.WebSocketPolyfill] Optionall provide a WebSocket polyfill
|
* @param {typeof WebSocket} [opts.WebSocketPolyfill] Optionall provide a WebSocket polyfill
|
||||||
* @param {number} [opts.resyncInterval] Request server state every `resyncInterval` milliseconds
|
* @param {number} [opts.resyncInterval] Request server state every `resyncInterval` milliseconds
|
||||||
* @param {number} [opts.maxBackoffTime] Maximum amount of time to wait before trying to reconnect (we try to reconnect using exponential backoff)
|
* @param {number} [opts.maxBackoffTime] Maximum amount of time to wait before trying to reconnect (we try to reconnect using exponential backoff)
|
||||||
@ -265,11 +265,15 @@ export class WebsocketProvider extends Observable {
|
|||||||
while (serverUrl[serverUrl.length - 1] === '/') {
|
while (serverUrl[serverUrl.length - 1] === '/') {
|
||||||
serverUrl = serverUrl.slice(0, serverUrl.length - 1)
|
serverUrl = serverUrl.slice(0, serverUrl.length - 1)
|
||||||
}
|
}
|
||||||
const encodedParams = url.encodeQueryParams(params)
|
this.serverUrl = serverUrl
|
||||||
this.maxBackoffTime = maxBackoffTime
|
|
||||||
this.bcChannel = serverUrl + '/' + roomname
|
this.bcChannel = serverUrl + '/' + roomname
|
||||||
this.url = serverUrl + '/' + roomname +
|
this.maxBackoffTime = maxBackoffTime
|
||||||
(encodedParams.length === 0 ? '' : '?' + encodedParams)
|
/**
|
||||||
|
* The specified url parameters. This can be safely updated. The changed parameters will be used
|
||||||
|
* when a new connection is established.
|
||||||
|
* @type {Object<string,string>}
|
||||||
|
*/
|
||||||
|
this.params = params
|
||||||
this.roomname = roomname
|
this.roomname = roomname
|
||||||
this.doc = doc
|
this.doc = doc
|
||||||
this._WS = WebSocketPolyfill
|
this._WS = WebSocketPolyfill
|
||||||
@ -378,6 +382,12 @@ export class WebsocketProvider extends Observable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
get url () {
|
||||||
|
const encodedParams = url.encodeQueryParams(this.params)
|
||||||
|
return this.serverUrl + '/' + this.roomname +
|
||||||
|
(encodedParams.length === 0 ? '' : '?' + encodedParams)
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @type {boolean}
|
* @type {boolean}
|
||||||
*/
|
*/
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user