这些是AppHandler,来自我在网上找到的模式,同时研究大猩猩/多路复用器.它们是满足http.Handler的结构的一部分.如果您注意到,以下两个块完全相同.实际上,它们可以作为字符串传递"变体"("流程"或"过程").
func CreateFlow(a *AppContext, w http.ResponseWriter, r *http.Request) (int, error) {
highest, code, err := a.Create("flow", r)
if code != 200 || err != nil {
return code, err
}
b := new(bytes.Buffer)
json.NewEncoder(b).Encode(struct {
Highest int `json:"id"`
}{highest})
w.Header().Set("Content-Type", "application/json")
w.Write(b.Bytes())
return 200, nil
}
func CreateProcess(a *AppContext, w http.ResponseWriter, r *http.Request) (int, error) {
highest, code, err := a.Create("process", r)
if code != 200 || err != nil {
return code, err
}
b := new(bytes.Buffer)
json.NewEncoder(b).Encode(struct { …Run Code Online (Sandbox Code Playgroud)