猿问

Google GO:路由请求处理神秘的声明?

我第一次迷恋Google GO。我扩展了“ hello world”应用程序,以尝试在init部分中定义路径。到目前为止,这是我所做的:


package hello


import (

    "fmt"

    "net/http"

)


func init() {

    http.HandleFunc("/service", serviceHandler)

    http.HandleFunc("/site", siteHandler)

    http.HandleFunc("/", handler)

}


func handler(w http.ResponseWriter, r *http.Request) {

    fmt.Fprint(w, "Hello, there")

}


func serviceHandler( w http.ResponseWriter, r *http.Request) {

    fmt.Fprint(w, "this is Services")

}


func siteHandler( w http.ResponseWriter, r *http.Request) {

    fmt.Fprint(w, "this is Sites")

}

只会执行handler()回调,而其他回调将被忽略。例如:http://myserver/service/foo印刷品Hello, there。我希望那样this is Services。


有没有更好的方法来进行服务路由?理想情况下,无论如何我都希望它们是单独的脚本,但是基于app.yaml_go_app在脚本声明中需要特殊字符串这一事实,Go似乎只有一个脚本。


白猪掌柜的
浏览 193回答 1
1回答
随时随地看视频慕课网APP

相关分类

Go
我要回答