1 | export default (baseUrl) => {
|
2 | window.__racerHighwayClientOptions = {
|
3 | base: '/channel',
|
4 | reconnect: true,
|
5 | browserChannelOnly: false,
|
6 | srvProtocol: getProtocol(baseUrl),
|
7 | srvHost: getHost(baseUrl),
|
8 | srvPort: getPort(baseUrl),
|
9 | srvSecurePort: getPort(baseUrl),
|
10 | timeout: 10000,
|
11 | timeoutIncrement: 10000
|
12 | }
|
13 | }
|
14 |
|
15 | function getHost (baseUrl) {
|
16 | return (baseUrl.match(/\/\/([^/:]+)/) || [])[1] || 'localhost'
|
17 | }
|
18 |
|
19 | function getProtocol (baseUrl) {
|
20 | return /https:/.test(baseUrl) ? 'https:' : 'http:'
|
21 | }
|
22 |
|
23 | function getPort (baseUrl) {
|
24 | let port = ~~(baseUrl.match(/:(\d+)/) || [])[1]
|
25 | if (!port) {
|
26 | let protocol = getProtocol(baseUrl)
|
27 | port = protocol === 'https:' ? 443 : 80
|
28 | }
|
29 | return port
|
30 | }
|