// var express = require('express')//加载express模块 // var path = require('path')//路径模块 // var app = express()//框架的实例化 // app.use(express.static(path.join(__dirname,"www")))//设置用户访问文件 默认把index.html文件返回用户 // app.listen(3000,function(err){ // if(err)throw err // console.log("express正常 服务器地址:http://localhost:3000") // }) // var express = require('express'); // var path = require('path'); // var axios = require('axios'); // 引入axios库 与python交互 // const bodyParser = require('body-parser'); //const cors = require('cors'); import express from 'express' import path from 'path' import axios from 'axios' import bodyParser from 'body-parser' import cors from 'cors' import { fileURLToPath } from 'url'; // 获取当前文件的绝对路径 const __filename = fileURLToPath(import.meta.url); // 获取当前文件的目录名 const __dirname = path.dirname(__filename); var app = express(); // 允许所有来源跨域 app.use(cors()); // 其他中间件和路由 app.get('/', (req, res) => { res.send('Hello from Express!'); }); app.use(express.static(path.join(__dirname, "www"))); //设置用户访问文件 默认把index.html文件返回用户 // 使用 body-parser 解析 JSON 请求体 app.use(bodyParser.json()); // 调用 Python 算法 API 获取随机学生 app.get('/get_random_student', async (req, res) => { try { // 通过 axios 发送请求给 Python 后端 const response = await axios.get('http://localhost:5000/get_random_student'); res.json(response.data); // 返回 Python API 返回的学生数据 } catch (error) { console.error('Error calling Python API', error); res.status(500).json({ error: 'Failed to get random student' }); } }); // 调用 Python 服务来更新出勤积分 app.post('/update_attendance_score', async (req, res) => { const { student_id } = req.body; try { // 通过 axios POST 请求调用 Python 更新积分的 API const response = await axios.post('http://localhost:5000/update_attendance_score', { student_id }); res.json(response.data); // 返回 Python API 的结果 } catch (error) { console.error('Error updating attendance score', error); res.status(500).json({ error: 'Failed to update attendance score' }); } }); // 调用 Python 服务来更新回答问题的积分 app.post('/update_answer_score', async (req, res) => { const { student_id, repeated_correctly, answer_score } = req.body; try { // 通过 axios POST 请求调用 Python 更新回答问题积分的 API const response = await axios.post('http://localhost:5000/update_answer_score', { student_id, repeated_correctly, answer_score }); res.json(response.data); // 返回 Python API 的结果 } catch (error) { console.error('Error updating answer score', error); res.status(500).json({ error: 'Failed to update answer score' }); } }); // 启动 Express 服务器 app.listen(3000, '0.0.0.0', function(err){ if(err) throw err; console.log("Express 正常运行,服务器地址:http://10.133.7.205:3000"); }); // var express = require('express'); // var path = require('path'); // var axios = require('axios'); // 引入 axios 库 // var app = express(); // const cors = require('cors'); // // 允许所有来源跨域 // app.use(cors()); // 其他中间件和路由 // app.get('/', (req, res) => { // res.send('Hello from Express!'); // }); // app.use(express.static(path.join(__dirname, "www"))); // app.use(express.json()); // 解析 JSON 请求体 // // 前端请求点名学生,调用Flask API // app.get('/api/get_random_student', async function(req, res) { // try { // // 调用Python Flask API // const response = await axios.get('http://localhost:5000/get_random_student'); // res.json(response.data); // 返回Flask API的响应给前端 // } catch (error) { // console.error(error); // res.status(500).send('调用Python API失败'); // } // }); // // 前端请求更新积分,调用Flask API // app.post('/api/update_attendance_score_route', async function(req, res) { // try { // // 将请求体转发给Flask API // const response = await axios.post('http://localhost:5000/update_attendance_score_route', req.body); // res.json(response.data); // 返回Flask API的响应给前端 // } catch (error) { // console.error(error); // res.status(500).send('调用Python API失败'); // } // }); // app.listen(3000, function(err){ // if(err) throw err; // console.log("Express 正常运行,服务器地址:http://localhost:3000"); // });