yunyin 6 months ago
parent d15106024a
commit d16eb297bc

@ -0,0 +1,29 @@
document.getElementById('loginForm').addEventListener('submit', async (event) => {
event.preventDefault(); // 阻止表单默认提交行为
const username = document.getElementById('username').value;
const password = document.getElementById('password').value;
try {
// 调用API进行登录验证
const response = await fetch('/api/login', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ username, password })
});
if (response.ok) {
// 登录成功,跳转到功能页面
window.location.href = '';
} else {
// 显示错误信息
alert('登录失败');
}
} catch (error) {
// 处理网络错误
console.error('Error:', error);
alert('无法连接到服务器,请检查网络');
}
});

@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>语音登录</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div class="login-container">
<h2>Login</h2>
<form id="loginForm">
<label for="username">用户名:</label>
<input type="text" id="username" required>
<br><br>
<label for="password">密码:</label>
<input type="password" id="password" required>
<br><br>
<button type="submit">登录</button>
</form>
</div>
<script src="scripts.js"></script>
</body>
</html>

@ -0,0 +1,56 @@
import tkinter as tk
from tkinter import ttk
import pyttsx3
import speech_recognition as sr
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/api/login', methods=['POST'])
def login():
username = request.json.get('username')
password = request.json.get('password')
# 这里应该替换为实际的用户验证逻辑,比如查询数据库
if username == 'abc' and password == '123':
return jsonify({"success": True, "message": "登录成功"})
else:
return jsonify({"success": False, "message": "用户名或密码错误"}), 401
def text_to_speech():
engine = pyttsx3.init()
text = text_entry.get("1.0", "end-1c") # 获取文本框中的文本
engine.say(text)
engine.runAndWait()
def main():
global text_entry
# 创建主窗口
app = tk.Tk()
app.title("文本转语音")
speed_slider = ttk.Scale(app, from_=50, to=200, orient=tk.HORIZONTAL)
speed_slider.set(120) # 默认语速
speed_slider.pack()
# 创建一个标签,用于提示输入文本
label = tk.Label(app, text="请输入文字:")
label.pack(pady=10)
# 创建一个文本框,用于用户输入
text_entry = tk.Text(app, height=10)
text_entry.pack()
# 创建一个按钮点击时调用text_to_speech函数
convert_button = tk.Button(app, text="识别", command=text_to_speech)
convert_button.pack(pady=10)
# 运行主循环
app.mainloop()
if __name__ == "__main__":
main()
app.run(debug=True)
Loading…
Cancel
Save