为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用变量作为 http.HandleFunc() 的模式

如何使用变量作为 http.HandleFunc() 的模式

Go
牛魔王的故事 2022-05-18 16:58:04
我有一些 HTTP 请求,它们共享许多常用功能:package mainimport (    "net/http"    "mypackage")func main() {    http.HandleFunc("/myurl1", func(w http.ResponseWriter, r *http.Request) {        mypackage.Common()        mypackage.Different1()    })    http.HandleFunc("/myurl2", func(w http.ResponseWriter, r *http.Request) {        mypackage.Common()        mypackage.Different2()    })    http.ListenAndServe(":8080", nil)}我可以使用变量代替/myurl并使用 switch case 来减少我的代码重复,如下所示:package mainimport (    "net/http"    "mypackage")func main() {    http.HandleFunc(variable string, func(w http.ResponseWriter, r *http.Request) {         mypackage.Common()         switch variable {         case "myurl1":             mypackage.Different1()         case "myurl2":             mypackage.Different2()         }    })    http.ListenAndServe(":8080", nil)}
查看完整描述

1 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

您可以先路由到 /,然后根据路径调用 Different1 或 Different2。请参考代码。



查看完整回答
反对 回复 2022-05-18
  • 1 回答
  • 0 关注
  • 226 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号