GO API: API Definition
student.go
student.go
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.package apis import ( "github.com/gorilla/mux" . "test.com/goapi/app/utils" . "test.com/goapi/app/db" . "test.com/goapi/app/model" "net/http" "encoding/json" "strconv" ) func GetAllStudentInfo(w http.ResponseWriter, r *http.Request) { students := GetStudentsDB() WriteHttpResponse(w, students, nil) } func GetStudentInfo(w http.ResponseWriter, r *http.Request) { params := mux.Vars(r) rollNumber := params["student-id"] student := GetStudentDB(rollNumber) WriteHttpResponse(w, student, nil) } func CreateStudentInfo(w http.ResponseWriter, r *http.Request) { defer r.Body.Close() decoder := json.NewDecoder(r.Body) var student Student err := decoder.Decode(&student) if err == nil { CreateStudentDB(student) } WriteEmptyHttpResponse(w) } func UpdateStudentInfo(w http.ResponseWriter, r *http.Request) { defer r.Body.Close() decoder := json.NewDecoder(r.Body) var student Student err := decoder.Decode(&student) if err == nil { params := mux.Vars(r) rollNumber := params["student-id"] student.RollNumber, _ = strconv.Atoi(rollNumber) UpdateStudentDB(student) } WriteEmptyHttpResponse(w) } func DeleteStudentInfo(w http.ResponseWriter, r *http.Request) { params := mux.Vars(r) rollNumber := params["student-id"] DeleteStudentDB(rollNumber) WriteEmptyHttpResponse(w) }
Comments
Post a Comment