Skip to content

hugi2002/SECU-API

 
 

Repository files navigation

SECU - API

SECU-API is api for course management system that include course, question, complier, testcase, user group and user.

Requirement

Getting Started

###[ Wiki การเริ่มต้นการใช้งาน และแนวทางพัฒนาอย่างละเอียด] (https://github.com/Neungzad/SECU-API/wiki)

หมายเหตุ:

  • ต้องการ PHP 5.5.9 ขึ้นไป
  • ในกรณีที่ไม่ได้ติดตั้งเว็บเซิร์ฟเวอร์ภายในเครื่องสามารถใช้คำสั่ง php -S 0.0.0.0:8000 เพื่อทดสอบการใช้งาน หลังจากนั้นให้เปิดเบราว์เซอร์ด้วย URL http://localhost:8000

Example API

Some example for how to call this api

Course:
Url Type Controller Description
/course GET CourseController@all All Courses
/course/{id} GET CourseController@get Fetch Courses By id
/course POST CourseController@add Create a course record
/course/{id} PUT CourseController@put Update Course by id
/course/{id} DELETE CourseController@remove Delete Courses by id
/course/{courseId}/meta/{metaKey} GET CourseController@getMetaByKey [example] Get only meta value
Complier:
Url Type Controller Description
/complie POST ExampleController@complie จะ return ค่าผมลัพธ์จากการ compile กลับไป
public function complie(Request $request)
{   
    /**
     *  Params
     *
     *  $lang String (require)
     *  $sourceCode String (require)
     *  $input String (optional) 
     */
    $output = Checker::complie($request->input('lang'), 
                               $request->input('sourceCode'), 
                               $request->input('input'));

    return $this->respond(Response::HTTP_OK, $output);
}

META DATA

Check Test Case:
Url Type Controller Description
/checkTestCase POST ExampleController@checkTestCase จะ return ค่า true หรือ false โดยเช็คความเท่ากันของ input กับ output
public function checkTestCase(Request $request)
{   
    /**
     *  Params
     *
     *  $lang String (require)
     *  $sourceCode String (require)
     *  $input String (require) 
     *  $output String (require) 
     */

    $output = Checker::checkTestCase($request->input('lang'), 
                                     $request->input('sourceCode'), 
                                     $request->input('input'), 
                                     $request->input('output'));

    return $this->respond(Response::HTTP_OK, $output);
}

META DATA

Example Input

ตัวอย่าง input สำหรับสำหรับบาง API

Add/Update Meta Data:

META DATA

About

API for course system management

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 99.4%
  • ApacheConf 0.6%