Skip to content

Commit dafe237

Browse files
jacksyrmcursoragent
andcommitted
fix: correct Microsoft download links API parameters
Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent ede917b commit dafe237

2 files changed

Lines changed: 10 additions & 18 deletions

File tree

src/components/docs/install/WindowsIsoDownload.astro

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -507,14 +507,10 @@ const tabItems = [
507507
}
508508

509509
async function fetchDownload() {
510-
if (!currentArch || currentSkuId === null || !currentLanguage) return;
510+
if (!currentArch || currentSkuId === null) return;
511511
showStep('loading-download');
512512

513-
const params = new URLSearchParams({
514-
arch: currentArch,
515-
skuId: String(currentSkuId),
516-
language: currentLanguage,
517-
});
513+
const params = new URLSearchParams({ skuId: String(currentSkuId) });
518514
try {
519515
const res = await fetch(`/api/ms-iso/links?${params}`);
520516
if (!res.ok) throw new Error(`HTTP ${res.status}`);

src/worker.ts

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -79,17 +79,15 @@ async function handleSkus(arch: string): Promise<Response> {
7979
return proxyMsApi(url);
8080
}
8181

82-
async function handleLinks(arch: string, skuId: string, language: string): Promise<Response> {
83-
if (!skuId || !language) return errorResponse('Missing skuId or language parameter.');
82+
async function handleLinks(skuId: string): Promise<Response> {
83+
if (!skuId) return errorResponse('Missing skuId parameter.');
8484

85-
const productId = PRODUCT_IDS[arch];
86-
if (!productId) return errorResponse('Invalid architecture. Use x64 or arm64.');
87-
88-
const url = new URL(`${MS_CONNECTOR_BASE}/getproductdownloadlinksbysku`);
85+
const url = new URL(`${MS_CONNECTOR_BASE}/GetProductDownloadLinksBySku`);
8986
url.searchParams.set('profile', PROFILE);
90-
url.searchParams.set('ProductEditionId', String(productId));
91-
url.searchParams.set('SkuId', skuId);
92-
url.searchParams.set('Language', language);
87+
url.searchParams.set('ProductEditionId', 'undefined');
88+
url.searchParams.set('SKU', skuId);
89+
url.searchParams.set('friendlyFileName', 'undefined');
90+
url.searchParams.set('Locale', 'en-US');
9391
url.searchParams.set('sessionID', crypto.randomUUID());
9492

9593
return proxyMsApi(url);
@@ -113,10 +111,8 @@ export default {
113111
}
114112

115113
if (url.pathname === '/api/ms-iso/links') {
116-
const arch = url.searchParams.get('arch') ?? '';
117114
const skuId = url.searchParams.get('skuId') ?? '';
118-
const language = url.searchParams.get('language') ?? '';
119-
return handleLinks(arch, skuId, language);
115+
return handleLinks(skuId);
120116
}
121117

122118
return env.ASSETS.fetch(request);

0 commit comments

Comments
 (0)