Skip to content

Commit

Permalink
Create qr-login.html (#154)
Browse files Browse the repository at this point in the history
  • Loading branch information
zkitefly authored Oct 3, 2024
1 parent 0ee7929 commit ec46084
Showing 1 changed file with 55 additions and 0 deletions.
55 changes: 55 additions & 0 deletions qr-login.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
---
permalink: /qr-login.html
layout: default
---

<style>
.selectable {
-webkit-user-select: all;
user-select: all;
cursor: pointer;
padding: 5px;
background-color: #b2b2b2;
border-radius: 5px;
display: inline-block;
margin-top: 10px;
}
</style>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/build/qrcode.min.js"></script>
<script>
function generateQRCode() {
const urlParams = new URLSearchParams(window.location.search);
const verificationUri = urlParams.get('verificationUri');
const userCode = urlParams.get('userCode');
const login = urlParams.get('login');
if (!verificationUri || !userCode) {
return; // 不显示任何内容
}
const qrcodeContainer = document.getElementById('qrcode');
if (login === '1') {
const userPrompt = document.createElement('p');
userPrompt.innerHTML = `请复制代码 <span class="selectable" id="userCode">${userCode}</span> <br>并前往 <a href="${verificationUri}">${verificationUri}</a>,输入代码允许访问并登录微软账户。`;
qrcodeContainer.appendChild(userPrompt);
} else {
const currentUrl = window.location.href + '?login=1';
console.log("currentUrl: ", currentUrl);
const canvas = document.createElement('canvas');
QRCode.toCanvas(canvas, currentUrl, function (error) {
if (error) console.error(error);
});
qrcodeContainer.appendChild(canvas);
const promptMessage = document.createElement('p');
promptMessage.innerHTML = `请扫描二维码。`;
qrcodeContainer.appendChild(promptMessage);
}
}
window.onload = function() {
generateQRCode();
}
</script>

<div id="qrcode"></div>

<noscript>
<p>请开启 JavaScript 以查看二维码生成内容。</p>
</noscript>

0 comments on commit ec46084

Please sign in to comment.