Skip to content

Commit 94cc6fc

Browse files
filiptronicekjeanp413
authored andcommitted
Fix WS endpoint URL and some other things
1 parent 1d88940 commit 94cc6fc

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

extensions/gitpod/src/auth.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import { ConsoleLogger, listen as doListen } from 'vscode-ws-jsonrpc';
1616

1717
import GitpodAuthSession from './sessionhandler';
1818
import fetch from 'node-fetch';
19-
import { URLSearchParams } from 'url';
19+
import { URL, URLSearchParams } from 'url';
2020

2121
export const authCompletePath = '/auth-complete';
2222
const getBaseURL = () => vscode.workspace.getConfiguration('gitpod').get('authOrigin', 'https://gitpod.io');
@@ -240,20 +240,20 @@ export async function setSettingsSync(enabled?: boolean): Promise<void> {
240240
async function createApiWebSocket(accessToken: string): Promise<{ gitpodService: GitpodConnection; pendignWebSocket: Promise<ReconnectingWebSocket>; }> {
241241
const factory = new JsonRpcProxyFactory<GitpodServer>();
242242
const gitpodService: GitpodConnection = new GitpodServiceImpl<GitpodClient, GitpodServer>(factory.createProxy()) as any;
243+
console.log(`Using token: ${accessToken}`);
243244
const pendignWebSocket = (async () => {
244245
class GitpodServerWebSocket extends WebSocket {
245246
constructor(address: string, protocols?: string | string[]) {
246247
super(address, protocols, {
247248
headers: {
248-
'Origin': getBaseURL(),
249+
'Origin': new URL(getBaseURL()).origin,
249250
'Authorization': `Bearer ${accessToken}`
250251
}
251252
});
252253
}
253254
}
254255
const webSocketMaxRetries = 3;
255-
console.log(`Endpoint: ${getBaseURL().replace('https', 'wss')}`);
256-
const webSocket = new ReconnectingWebSocket(getBaseURL().replace('https', 'wss'), undefined, {
256+
const webSocket = new ReconnectingWebSocket(`${getBaseURL().replace('https', 'wss')}/api/v1`, undefined, {
257257
minReconnectionDelay: 1000,
258258
connectionTimeout: 10000,
259259
maxRetries: webSocketMaxRetries - 1,
@@ -310,11 +310,12 @@ export async function resolveAuthenticationSession(scopes: readonly string[], co
310310
});
311311

312312
if (!exchangeTokenResponse.ok) {
313-
vscode.window.showErrorMessage(`Couldn't connect: ${exchangeTokenResponse.statusText}, ${await exchangeTokenResponse.text()}`);
313+
vscode.window.showErrorMessage(`Couldn't connect (token exchange): ${exchangeTokenResponse.statusText}, ${await exchangeTokenResponse.text()}`);
314314
return null;
315315
}
316316

317317
const exchangeTokenData: ExchangeTokenResponse = await exchangeTokenResponse.json();
318+
console.log(exchangeTokenData);
318319
const access_token = exchangeTokenData.access_token;
319320

320321
console.log(access_token);

0 commit comments

Comments
 (0)