@@ -32,8 +32,6 @@ func create(w http.ResponseWriter, r *http.Request) {
32
32
var createEvent event
33
33
reqBody , err := ioutil .ReadAll (r .Body )
34
34
json .Unmarshal (reqBody , & createEvent )
35
-
36
- fmt .Println (createEvent .Name )
37
35
psqlInfo := fmt .Sprintf ("host=%s port=%d user=%s " + "password=%s dbname=%s sslmode=disable" ,
38
36
host , port , user , password , dbname )
39
37
db , err := sql .Open ("postgres" , psqlInfo )
@@ -75,19 +73,54 @@ func read(w http.ResponseWriter, r *http.Request) {
75
73
76
74
// UPDATE
77
75
func update (w http.ResponseWriter , r * http.Request ) {
78
- fmt .Fprintf (w , "Welcome home!" )
76
+ var createEvent event
77
+ reqBody , err := ioutil .ReadAll (r .Body )
78
+ json .Unmarshal (reqBody , & createEvent )
79
+ psqlInfo := fmt .Sprintf ("host=%s port=%d user=%s " + "password=%s dbname=%s sslmode=disable" ,
80
+ host , port , user , password , dbname )
81
+ db , err := sql .Open ("postgres" , psqlInfo )
82
+ if err != nil {
83
+ panic (err )
84
+ }
85
+ sqlStatement := `UPDATE data SET name = ($1)`
86
+ _ , err = db .Exec (sqlStatement , createEvent .Name )
87
+ if err != nil {
88
+ panic (err )
89
+ }
90
+ defer db .Close ()
91
+ var response message
92
+ response .Message = "Success"
93
+ json .NewEncoder (w ).Encode (response )
94
+
79
95
}
80
96
81
97
// DELETE
82
98
func delete (w http.ResponseWriter , r * http.Request ) {
83
- fmt .Fprintf (w , "Welcome home!" )
99
+ var createEvent event
100
+ reqBody , err := ioutil .ReadAll (r .Body )
101
+ json .Unmarshal (reqBody , & createEvent )
102
+ psqlInfo := fmt .Sprintf ("host=%s port=%d user=%s " + "password=%s dbname=%s sslmode=disable" ,
103
+ host , port , user , password , dbname )
104
+ db , err := sql .Open ("postgres" , psqlInfo )
105
+ if err != nil {
106
+ panic (err )
107
+ }
108
+ sqlStatement := `DELETE FROM data WHERE name = ($1)`
109
+ _ , err = db .Exec (sqlStatement , createEvent .Name )
110
+ if err != nil {
111
+ panic (err )
112
+ }
113
+ defer db .Close ()
114
+ var response message
115
+ response .Message = "Success"
116
+ json .NewEncoder (w ).Encode (response )
84
117
}
85
118
86
119
func main () {
87
120
router := mux .NewRouter ().StrictSlash (true )
88
- router .HandleFunc ("/create" , create )
89
- router .HandleFunc ("/read" , read )
90
- router .HandleFunc ("/update" , update )
91
- router .HandleFunc ("/delete" , delete )
121
+ router .HandleFunc ("/create" , create ). Methods ( "POST" )
122
+ router .HandleFunc ("/read" , read ). Methods ( "GET" )
123
+ router .HandleFunc ("/update" , update ). Methods ( "PUT" )
124
+ router .HandleFunc ("/delete" , delete ). Methods ( "DELETE" )
92
125
log .Fatal (http .ListenAndServe (":8080" , router ))
93
126
}
0 commit comments