Cara melaksanakan fungsi tolak dan pemberitahuan masa nyata markah jawapan dalam menjawab dalam talian memerlukan contoh kod khusus
Dengan pembangunan Internet teknologi, semakin banyak Semakin banyak institusi pendidikan dan institusi latihan memilih sistem jawapan dalam talian untuk peperiksaan dan penilaian. Fungsi tolak dan pemberitahuan masa nyata markah jawapan dalam sistem jawapan dalam talian adalah sangat penting kepada pelajar dan guru. Artikel ini menerangkan cara melaksanakan fungsi ini dan menyediakan contoh kod khusus.
Apabila menyedari fungsi tolakan dan pemberitahuan masa nyata skor jawapan, kami boleh menggunakan teknologi komunikasi masa nyata dan perkhidmatan tolak mesej untuk mencapai matlamat ini. Di bawah ini kami akan mengambil sistem menjawab soalan dalam talian yang mudah sebagai contoh untuk menggambarkan.
Pertama, kita memerlukan alat komunikasi masa nyata, seperti WebSocket. WebSocket boleh mewujudkan sambungan berterusan antara pelanggan dan pelayan, membolehkan kedua-dua pihak berkomunikasi dalam masa nyata.
Berikut adalah contoh kod sambungan WebSocket:
// 创建WebSocket连接 const socket = new WebSocket('wss://example.com/ws'); // 监听连接打开事件 socket.onopen = function(event) { console.log('WebSocket连接已打开'); }; // 监听收到消息事件 socket.onmessage = function(event) { const message = JSON.parse(event.data); console.log('收到消息:', message); // 处理收到的消息,例如更新答题成绩 }; // 监听连接关闭事件 socket.onclose = function(event) { console.log('WebSocket连接已关闭'); }; // 发送消息 function sendMessage(message) { socket.send(JSON.stringify(message)); }
Dalam sistem jawapan, apabila pelajar menghantar jawapan mereka, pelayan boleh mengira markah berdasarkan jawapan dan Skor pelajar maklumat dihantar ke bahagian hadapan. Berikut ialah contoh kod sebelah pelayan:
// 导入WebSocket模块 const WebSocket = require('ws'); // 创建WebSocket服务器 const wss = new WebSocket.Server({ port: 8080 }); // 监听连接事件 wss.on('connection', function(socket) { console.log('客户端已连接'); // 发送消息 function sendMessage(message) { socket.send(JSON.stringify(message)); } // 监听收到消息事件 socket.on('message', function(message) { console.log('收到消息:', message); // 处理收到的消息,例如计算得分和发送得分信息 const score = calculateScore(message); sendMessage({ type: 'score', score: score }); }); // 监听连接关闭事件 socket.on('close', function() { console.log('客户端已断开连接'); }); });
Kod di atas mencipta pelayan WebSocket dan mendengar acara sambungan. Apabila pelanggan menyambung ke pelayan, pelayan mengira skor berdasarkan mesej yang diterima dan kemudian menghantar maklumat skor kepada pelanggan.
Di bahagian hadapan, kami boleh menerima markah jawapan yang dihantar oleh pelayan melalui acara onmessage
WebSocket. Berikut ialah contoh kod bahagian hadapan:
// 创建WebSocket连接 const socket = new WebSocket('wss://example.com/ws'); // 监听连接打开事件 socket.onopen = function(event) { console.log('WebSocket连接已打开'); }; // 监听收到消息事件 socket.onmessage = function(event) { const message = JSON.parse(event.data); if (message.type === 'score') { // 收到答题成绩 console.log('得分:', message.score); // 显示得分信息,例如更新页面上的得分 } }; // 监听连接关闭事件 socket.onclose = function(event) { console.log('WebSocket连接已关闭'); }; // 提交答案并发送消息 function submitAnswer(answer) { const message = { type: 'answer', answer: answer }; socket.send(JSON.stringify(message)); }
Kod di atas mencipta sambungan WebSocket dan memproses maklumat skor jawapan apabila menerima mesej yang dihantar oleh pelayan.
Di atas ialah contoh kod khusus tentang cara melaksanakan fungsi tolak dan pemberitahuan masa nyata markah jawapan dalam soalan jawapan dalam talian. Dengan menggunakan teknologi komunikasi masa nyata dan perkhidmatan tolak mesej, kami boleh mencapai tolak dan pemberitahuan skor masa nyata selepas pelajar menjawab soalan. Dalam aplikasi sebenar, kita boleh melaraskan kod dengan sewajarnya mengikut keperluan untuk menjadikannya lebih konsisten dengan keperluan sistem.
Atas ialah kandungan terperinci Cara melaksanakan fungsi tolak dan pemberitahuan masa nyata untuk markah ujian dalam kuiz dalam talian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!