CMRU API มุ่งเน้นการทดลองสร้างไลบรารีสำหรับสื่อสารกับบริการที่เกี่ยวข้องกับมหาวิทยาลัยราชภัฏเชียงใหม่ โดยมุ่งหวังให้ผู้สนใจด้านโปรแกรมมิ่งได้ศึกษาวิธีเรียกใช้งาน API, การจัดการ Session, และการแปลงข้อมูล HTML เป็นโครงสร้าง json ที่นำไปใช้ต่อได้ง่าย
Warning
โปรเจ็กต์งานอดิเรกที่พัฒนาขึ้นเพื่อสำรวจการเชื่อมต่อกับบริการที่เกี่ยวข้องกับ CMRU โดยไม่มีความเกี่ยวข้องทางการกับหน่วยงานหรือบุคลากรของมหาวิทยาลัย
เลือกติดตั้งแพ็กเกจด้วยตัวจัดการที่ถนัด:
bun add @cmru-comsci-66/cmru-api
npm install @cmru-comsci-66/cmru-api
pnpm add @cmru-comsci-66/cmru-api
yarn add @cmru-comsci-66/cmru-api
# หรือ @cmru-computer-science-66/cmru-apiตัวอย่างการใช้งานพร้อม type inference:
import { ApiClient, ApiServer, type ParsedScheduleData } from "@cmru-comsci-66/cmru-api";
const client = new ApiClient(ApiServer.BUS);
const busApi = client.api();
await busApi.login("66143000", "password");
const schedule: ParsedScheduleData = await busApi.getSchedule();
console.log(schedule.reservations.length);TypeScript จะได้รับไฟล์ definition โดยอัตโนมัติจากแพ็กเกจ ไม่จำเป็นต้องติดตั้งไลบรารี @types เสริม
ตัวอย่างสำหรับ Node.js 20+ หรือ Bun ที่รองรับ ES Module:
import { ApiClient, ApiServer } from "@cmru-comsci-66/cmru-api";
const apiClient = new ApiClient(ApiServer.BUS);
const busApi = apiClient.api();
await busApi.login("66143000", "password");
const schedule = await busApi.getSchedule();
console.log(schedule);หากต้องการใช้ในสภาพแวดล้อม CommonJS ให้เรียกใช้
const { ApiClient, ApiServer } = require("@cmru-comsci-66/cmru-api");
สามารถอ่านรายละเอียดของโมดูล ฟังก์ชัน และชนิดข้อมูลทั้งหมดได้ที่ เว็บไซต์เอกสารประกอบ
-
- จอง/ยืนยัน/ยกเลิกการจองรถ
>0.2.0 - ดูข้อมูลตารางเดินรถต่างๆ
>0.3.2 - โปรไฟล์
>0.5.0
- จอง/ยืนยัน/ยกเลิกการจองรถ
-
- ตารางเรียน/สอบ นักศึกษา
>0.2.0 - ประวัตินักศึกษา
>0.5.0 - ผลการศึกษา
>0.5.0 - ประวัติเข้าร่วมกิจกรรม
>0.5.0 - ตรวจสอบการผ่านกิจกรรม
>0.5.0 - แผนการเรียน
>0.5.0
- ตารางเรียน/สอบ นักศึกษา
- สำนักทะเบียน
- ระบบลงทะเบียนรายวิชา
- ระบบแจ้งเตือนและประกาศ
- ระบบบันทึกข้อมูลความถนัด
- เปลี่ยนรหัสผ่าน
- ปฏิทินการศึกษา
- ลงทะเบียนเพิ่มถอน
- ผลการลงทะเบียนและพิมพ์ใบชำระเงิน
- พิมพ์ใบเสร็จ
- ภาระค่าใช้จ่ายและทุนการศึกษา
- ประเมินผู้สอน
- ตรวจสอบสถานะจบการศึกษา
- คำร้องออนไลน์
- ผลอนุมัติคำร้อง
- สมัครเข้าร่วมกิจกรรม
- วิชาที่เปิดสอน
- ค้นหาตารางเรียน
- ตารางสอนอาจารย์
- ค้นหาตารางการใช้ห้อง
- จำนวนนักศึกษาตามหมู่เรียน
- ตรวจสอบหลักฐานการรายงานตัวนักศึกษา
- ระบบขอเอกสารทางการศึกษา
- พิมพ์ใบชำระค่าเทียบโอน/ยกเว้นผลการเรียน
- แจ้งปัญหาการใช้งานสารสนเทศ
- เสนอความคิดเห็น
- ประวัติการเข้าใช้ระบบ
รัน API server
# ใช้ bunx (แนะนำ)
bunx @cmru-comsci-66/cmru-api serve
# หรือใช้ npx
npx @cmru-comsci-66/cmru-api serve
# กำหนด port และ host
PORT=8080 HOST=0.0.0.0 bunx @cmru-comsci-66/cmru-api serveServer จะทำงานที่ http://localhost:3000 พร้อม REST API endpoints:
- โปรเจ็กต์นี้เป็นงานอดิเรกส่วนบุคคล ไม่ได้เป็นผลิตภัณฑ์หรือบริการอย่างเป็นทางการของ CMRU หรือองค์กรใดๆ
- ผู้พัฒนาไม่มีตำแหน่งหน้าที่หรือบทบาทตัวแทนของ CMRU ทุกความคิดเห็นและการตัดสินใจในที่เก็บโค้ดนี้เป็นความรับผิดชอบส่วนตัว
- โค้ดและข้อมูลถูกจัดทำขึ้นเพื่อการทดลองและการศึกษา ผู้ใช้ควรตรวจสอบความถูกต้องก่อนนำไปใช้จริง
- ผู้พัฒนาไม่รับประกันความถูกต้อง ความต่อเนื่อง หรือความปลอดภัยของการใช้งาน และไม่รับผิดชอบต่อความเสียหายใดๆ ที่อาจเกิดขึ้น
ยินดีรับคำแนะนำ ปรับปรุง รายงานบั๊ก และ Pull Request สำหรับการแก้ไขบั๊กหรือเพิ่มฟีเจอร์ โดยทุกข้อเสนอควรระบุชัดเจนว่าเป็นการทดลองหรือเพื่อการเรียนรู้ และต้องไม่ละเมิดข้อตกลงหรือทรัพยากรของ CMRU สามารถแจ้งปัญหาได้ที่ GitHub Issues
โปรเจ็กต์นี้เผยแพร่ภายใต้เงื่อนไขที่ระบุในไฟล์ LICENSE ผู้ใช้งานควรอ่านรายละเอียดก่อนนำไปใช้ในบริบทอื่น