Я пытаюсь создать расширение для платформы Azure DevOps для управления правами пользователей. Но при использовании npm sdk «vss-web-extension-sdk» API-интерфейс пользователя недоступен (https://docs.microsoft.com/en-us/rest/api/azure/devops/memberentitlementmanagement/user%20entitlements?view=azure-devops-rest-5.0). И теперь я не уверен, как я могу управлять правами пользователя с помощью расширения.
Я уже пытался вызвать Api вручную с помощью извлечения Api из Javascript, но я получаю сообщение об ошибке Cross-Origin Read Blocking (CORB). Cross-Origin Read Blocking (CORB) blocked cross-origin response https://vsaex.dev.azure.com/*****/_apis/userentitlements?api-version=5.0-preview.2 with MIME type application/json. See https://www.chromestatus.com/feature/5629709824032768 for more details.
Cross-Origin Read Blocking (CORB) blocked cross-origin response https://vsaex.dev.azure.com/*****/_apis/userentitlements?api-version=5.0-preview.2 with MIME type application/json. See https://www.chromestatus.com/feature/5629709824032768 for more details.
Код, который не работает:
export function api<T>(url: string, options?: RequestInit): Promise<T> { return fetch(url, options) .then((response: Response) => { if (!response.ok) { throw new Error(response.statusText) } return response .json() .then(data => data as T); } ); } ---- const pat = base64Encode(`:${(document.getElementById("pat") as HTMLInputElement).value}`); api<{ members: { accessLevel: { licenseDisplayName: string } }[] }>( `https://vsaex.dev.azure.com/${VSS.getWebContext().account.name}/_apis/userentitlements?api-version=5.0-preview.2`, { method: 'GET', headers: new Headers({ 'Authorization': `Basic ${pat}` }), mode: 'no-cors', credentials: 'include' } ).then( ({ members }) => { console.log(members); } ).catch( (err) => { console.error(err); } );