如何调试特定功能?
How can I debug specific functions?
我有一个具有多种不同功能的网站。我可以使用 localhost:5000/ 访问我的网站,当我使用 运行 在调试模式下使用 vscode-go 调试器时,我收到以下消息
API 服务器监听:127.0.0.1:52238
我有一个 returns 几个字符串的名称函数,但我无法在调试模式下命中断点。我在我的 Name 函数中放置了一个断点,并将 url 放置如下: 127.0.0.1:52238/name 但是它没有到达断点。这里会发生什么?如果我 运行 应用程序正常并放置 http://localhost:5000/name 那么我的代码如下断点或页面。我使用 Go 作为后端 api,所以我需要点击 url 端点以查看发生了什么。 有什么方法可以让调试端口也:5000 ?
-- Main
package main
import (
"github.com/gorilla/mux"
"runtime"
"./Models"
"./Controllers"
)
func main() {
Controllers.CircleRoutes(r)
srv := &http.Server{
ReadTimeout: 20 * time.Second,
WriteTimeout: 20 * time.Second,
IdleTimeout: 120 * time.Second,
Addr: ":5000",
}
srv.ListenAndServe()
}
// Circles Route
package Controllers
func Name(w http.ResponseWriter, r *http.Request) {
var result string
r.ParseForm()
result = "Success"
io.WriteString(w, result)
}
func CircleRoutes(r *mux.Router) {
r.HandleFunc("/name", Name)
}
您似乎在使用 vscode-go 调试器。
您可以从 vscode.
配置文件中的 launch.json 配置端口
配置应如下所示:
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "go",
"request": "launch",
"mode": "debug",
"remotePath": "",
"port": 2345,
"host": "127.0.0.1",
"program": "${workspaceRoot}",
"env": {
"GOPATH": <your GOPATH>
},
"args": [],
"showLog": true
}
],
"go.lintTool": "gometalinter"
}
您可以从上面的设置中更改端口。要查找 launch.json
,只需 ctrl+P
并键入 launch.json 它会在您的 vscode.
中显示搜索的下拉结果
我有一个具有多种不同功能的网站。我可以使用 localhost:5000/ 访问我的网站,当我使用 运行 在调试模式下使用 vscode-go 调试器时,我收到以下消息 API 服务器监听:127.0.0.1:52238
我有一个 returns 几个字符串的名称函数,但我无法在调试模式下命中断点。我在我的 Name 函数中放置了一个断点,并将 url 放置如下: 127.0.0.1:52238/name 但是它没有到达断点。这里会发生什么?如果我 运行 应用程序正常并放置 http://localhost:5000/name 那么我的代码如下断点或页面。我使用 Go 作为后端 api,所以我需要点击 url 端点以查看发生了什么。 有什么方法可以让调试端口也:5000 ?
-- Main
package main
import (
"github.com/gorilla/mux"
"runtime"
"./Models"
"./Controllers"
)
func main() {
Controllers.CircleRoutes(r)
srv := &http.Server{
ReadTimeout: 20 * time.Second,
WriteTimeout: 20 * time.Second,
IdleTimeout: 120 * time.Second,
Addr: ":5000",
}
srv.ListenAndServe()
}
// Circles Route
package Controllers
func Name(w http.ResponseWriter, r *http.Request) {
var result string
r.ParseForm()
result = "Success"
io.WriteString(w, result)
}
func CircleRoutes(r *mux.Router) {
r.HandleFunc("/name", Name)
}
您似乎在使用 vscode-go 调试器。 您可以从 vscode.
配置文件中的 launch.json 配置端口配置应如下所示:
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "go",
"request": "launch",
"mode": "debug",
"remotePath": "",
"port": 2345,
"host": "127.0.0.1",
"program": "${workspaceRoot}",
"env": {
"GOPATH": <your GOPATH>
},
"args": [],
"showLog": true
}
],
"go.lintTool": "gometalinter"
}
您可以从上面的设置中更改端口。要查找 launch.json
,只需 ctrl+P
并键入 launch.json 它会在您的 vscode.