实现登录注册接口

Change-Id: I3d57cca89cac8945d562f6a39127b3454c1cd9ac
diff --git a/src/main/resources/static/register.html b/src/main/resources/static/register.html
new file mode 100644
index 0000000..1e43e90
--- /dev/null
+++ b/src/main/resources/static/register.html
@@ -0,0 +1,54 @@
+<!-- src/main/resources/static/register.html -->
+<!DOCTYPE html>
+<html lang="zh-CN">
+<head>
+    <meta charset="UTF-8">
+    <title>注册</title>
+</head>
+<body>
+<h2>用户注册</h2>
+<form id="regForm">
+    <label>用户名:</label>
+    <input type="text" name="username" required>
+    <label>邮箱:</label>
+    <input type="email" name="email" required>
+    <button type="button" id="sendCode">发送验证码</button>
+    <label>邮箱验证码:</label>
+    <input type="text" name="verificationCode" required>
+    <label>密码:</label>
+    <input type="password" name="password" required>
+    <label>身份证号(8 位数字):</label>
+    <input type="number" name="identificationNumber" required>
+    <label>邀请码:</label>
+    <input type="text" name="inviteCode" required>
+    <button type="submit">注册</button>
+</form>
+<script>
+    document.getElementById('sendCode')
+        .addEventListener('click', async () => {
+            const form = new URLSearchParams();
+            form.set('email', document.querySelector('[name=email]').value);
+            form.set('inviteCode', document.querySelector('[name=inviteCode]').value);
+            const res = await fetch('/sendVerification', {
+                method: 'POST',
+                body: form
+            });
+            alert((await res.json()).msg);
+        });
+    document.getElementById('regForm')
+        .addEventListener('submit', async e => {
+            e.preventDefault();
+            const form = new URLSearchParams(new FormData(e.target));
+            const res = await fetch('/register', {
+                method: 'POST',
+                body: form
+            });
+            const json = await res.json();
+            alert(json.msg);
+            if (res.ok && json.code===0) {
+                window.location.href='login.html';
+            }
+        });
+</script>
+</body>
+</html>