ลิงก์ไปยังบิลด์การผลิตแบบสด
ยินดีต้อนรับสู่อีกหนึ่งโครงการ API ของฉัน สำหรับโปรเจ็กต์นี้ ฉันได้เขียน ทดสอบ และปรับใช้แอปพลิเคชัน Laravel โดยเป็นส่วนหนึ่งของโปรเจ็กต์ฟูลสแตก โดยใช้ประโยชน์จากฟีเจอร์อันทรงพลังมากมายของเฟรมเวิร์ก รวมถึง:
API นี้ประมวลผลข้อมูลที่เกี่ยวข้องกับผู้ใช้/ผู้สมัครและการสอบของพวกเขา ตัวอย่างเช่น อนุญาตให้ผู้ใช้ดูข้อมูลเกี่ยวกับสถานที่สอบ/สถานที่สอบ วันที่ ชื่อผู้สมัคร และอื่นๆ
// To sign up as an admin, make a POST request to https://laravel-php-api.vercel.app/public/api/signup and include a request body in the following format:
{
"name" : " Anna Torpid " ,
"email" : " [email protected] " ,
"password" : " dfbdf9suhfd9shf " ,
"password_confirmation" : " dfbdf9suhfd9shf "
}
// To login, make a POST request to https://laravel-php-api.vercel.app/public/api/login and include a request body in the following format:
{
"email" : " [email protected] " ,
"password" : " dfbdf9suhfd9shf "
}
// The above POST request returns this response. Make sure to include the returned token in the authorisation header of all future requests.
{
"user" : {
"id" : 11 ,
"name" : " Anna Torpid " ,
"email" : " [email protected] "
},
"token" : " 5|tAujbY9luWTKquNEruGHU7soCXp7MuzVb8WR0VO9 "
}
เมื่อคุณสมัครหรือเข้าสู่ระบบแล้ว คุณจะได้รับโทเค็น API ซึ่งจะต้องแนบไปกับส่วนหัวคำขอของคุณเพื่อให้แน่ใจว่ามีการเข้าถึง CRUD โดยสมบูรณ์
หากต้องการเข้าถึงส่วนปลายแต่ละส่วน ให้เพิ่มส่วน URI เข้ากับส่วนปลายราก คุณสามารถดูรายละเอียดเพิ่มเติมได้โดยไปที่จุดสิ้นสุดรูท
ทรัพยากร | คำอธิบาย | การรับรองความถูกต้อง/การอนุญาต |
---|---|---|
โพสต์ / สมัครสมาชิก | สร้างบัญชีใหม่ | สาธารณะ |
โพสต์ /เข้าสู่ระบบ | เข้าสู่ระบบบัญชีที่มีอยู่ | สาธารณะ |
รับ /ออกจากระบบ/{id} | ออกจากระบบ (เพิกถอนโทเค็น) | ผู้ใช้ที่เข้าสู่ระบบเท่านั้น |
รับ/สอบ | แสดงรายการข้อสอบทั้งหมด รวมพารามิเตอร์การค้นหาเพิ่มเติม 5 รายการ | ผู้ดูแลระบบเท่านั้น |
รับ / สอบ / {id} | รับสอบเฉพาะทาง. | ดูได้เฉพาะข้อสอบของตัวเองเท่านั้น |
PUT /การสอบ/{id} | ปรับเปลี่ยนข้อสอบเฉพาะ | แก้ไขได้เฉพาะข้อสอบของตนเองเท่านั้น |
รับ / สอบ / ค้นหา / {ชื่อ} | ค้นหาสตริงย่อยสำหรับผู้สมัครที่เฉพาะเจาะจง | ผู้ดูแลระบบเท่านั้น |
ลบ /การสอบ/{id} | ลบข้อสอบ. | ลบได้เฉพาะข้อสอบของตนเองเท่านั้น |
รับ / ผู้ใช้ | รับรายชื่อผู้ใช้ทั้งหมด | ผู้ดูแลระบบเท่านั้น |
GET /users/{id}/exams | รับรายการสอบทั้งหมดสำหรับผู้ใช้ | ดูได้เฉพาะข้อสอบของตัวเองเท่านั้น |
ขั้นแรก ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง PHP และ Composer ไว้ในเครื่องของคุณแล้ว
ข้อกำหนดเวอร์ชันขั้นต่ำ: PHP ^8.1 ; ผู้แต่ง 2.5.4 .
แยกและโคลนพื้นที่เก็บข้อมูล
cd ลงในที่เก็บและรันคำสั่ง CLI เหล่านี้:
composer update
composer install
เปลี่ยนชื่อไฟล์ .env.example
ของคุณเป็น .env
ลบตัวแปรสำหรับการเชื่อมต่อ mysql เริ่มต้น และให้แน่ใจว่าคุณเพิ่มตัวแปร 3 ตัวต่อไปนี้:
DB_CONNECTION=sqlite
DB_FOREIGN_KEYS=true
USE_SQLITE_SYNTAX=like
DB_DATABASE= this needs to be the absolute path to the sqlite database located in ./database/database.sqlite, e.g. /home/username/mydocuments/laravel-api/database/database.sqlite*
หากต้องการหมุนเซิร์ฟเวอร์การพัฒนาในเครื่อง ให้รันคำสั่ง Artisan CLI:
php artisan serve
หากต้องการรันชุดทดสอบ ให้รันคำสั่ง Artisan CLI:
php artisan test