Creating a handler that return JSON
This commit is contained in:
		@ -1,10 +1,12 @@
 | 
			
		||||
package handlers
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"encoding/json"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"go-udemy-web-1/pkg/config"
 | 
			
		||||
	"go-udemy-web-1/pkg/models"
 | 
			
		||||
	"go-udemy-web-1/pkg/render"
 | 
			
		||||
	"log"
 | 
			
		||||
	"net/http"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@ -80,3 +82,25 @@ func (m *Repository) PostReservation(w http.ResponseWriter, r *http.Request) {
 | 
			
		||||
	end := r.Form.Get("end")
 | 
			
		||||
	fmt.Fprintf(w, "Posted to search availability from %s to %s", start, end)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type responseJSON struct {
 | 
			
		||||
	OK      string `json:"ok"`
 | 
			
		||||
	Message string `json:"message"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// MakeReservation is the make reservation page handler
 | 
			
		||||
func (m *Repository) ReservationJSON(w http.ResponseWriter, r *http.Request) {
 | 
			
		||||
	resp := responseJSON{
 | 
			
		||||
		OK:      "true",
 | 
			
		||||
		Message: "Available!",
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	out, err := json.MarshalIndent(resp, "", "    ")
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		log.Println(err)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	w.Header().Set("Content-Type", "application/json")
 | 
			
		||||
 | 
			
		||||
	w.Write(out)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user