Handle request headers correctly

This commit is contained in:
Mattias Frinnström
2020-11-18 16:28:11 +01:00
parent c08e5cbd6f
commit b1b6537bc3
2 changed files with 8 additions and 7 deletions
@@ -192,7 +192,6 @@ describe('AzureUrlReader', () => {
const result = getDownloadUrl(
'https://dev.azure.com/organization/project/_git/repository?path=%2Fdocs',
);
console.log(result.searchParams);
expect(result.searchParams.get('scopePath')).toEqual('docs');
});
});
@@ -101,10 +101,10 @@ export class AzureUrlReader implements UrlReader {
url: string,
options?: ReadTreeOptions,
): Promise<ReadTreeResponse> {
const response = await fetch(getDownloadUrl(url).toString(), {
...this.getRequestOptions(),
headers: { Accept: 'application/zip' },
});
const response = await fetch(
getDownloadUrl(url).toString(),
this.getRequestOptions({ Accept: 'application/zip' }),
);
if (!response.ok) {
const message = `Failed to read tree from ${url}, ${response.status} ${response.statusText}`;
if (response.status === 404) {
@@ -178,8 +178,10 @@ export class AzureUrlReader implements UrlReader {
}
}
private getRequestOptions(): RequestInit {
const headers: HeadersInit = {};
private getRequestOptions(additionalHeaders?: {
[key: string]: string;
}): RequestInit {
const headers: HeadersInit = additionalHeaders ?? {};
if (this.options.token) {
headers.Authorization = `Basic ${Buffer.from(