Created
October 19, 2024 14:43
-
-
Save kasajian/d383d650b4007fd87610b699dbe137e7 to your computer and use it in GitHub Desktop.
Sample HTML shows 401 Unauthorized in Dev Tools Console, but cannot get status code in client-side js
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<body> | |
<script> | |
(async function () { | |
"use strict"; | |
const API_ORGANIZATION="contoso" | |
const expiredPat = 'ts44tplifj4hbbzeitcz5dg5az4q3mpqcxqmrxo4zwlgy3scobzq' | |
const pat = expiredPat | |
// Fetch data from Azure DevOps | |
async function ado(api) { | |
const url = `https://dev.azure.com/${API_ORGANIZATION}/_apis/${api}` | |
console.log(`url: ${url}`) | |
const response = await fetch(url, { | |
method: 'GET', | |
cache: 'no-cache', | |
mode: 'cors', | |
headers: { | |
Authorization: 'Basic ' + btoa(':' + pat), | |
Accept: 'application/json', | |
} | |
}) | |
return await response.json() | |
} | |
// get the connectionData from Azure DevOps | |
async function getConnectionData() { | |
return await ado('connectionData') | |
} | |
function topText(text) { | |
var p = document.createElement('p'); | |
p.innerHTML = text | |
document.body.prepend(p) | |
return p | |
} | |
// show the connection Data at the top of the window | |
async function showConnectionData() { | |
try { | |
const result = await getConnectionData(); | |
topText(`Azure DevOps access authenticated as: ${result.authenticatedUser.providerDisplayName}`) | |
} catch(err) { | |
const p = topText(`${err} - See console`) | |
p.style.color = "red"; | |
p.style.fontWeight = "999" | |
} | |
} | |
async function tryFetch() { | |
try { | |
await showConnectionData() | |
} catch(err) { | |
console.log(err); | |
} | |
} | |
document.addEventListener("DOMContentLoaded", function(event) { | |
tryFetch() | |
}); | |
})(); | |
</script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment