gpt4 book ai didi

go - 内存错误,Go 中的 html/模板

转载 作者:IT王子 更新时间:2023-10-29 02:27:56 27 4
gpt4 key购买 nike

我在尝试执行这段代码时遇到一些内存错误:

package web

import (
"net/http"
"html/template"
)

type Hello struct {
Level string
}

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

h := Hello{Level: "gsdfg"}

t, _ := template.ParseFiles("web.html")
t.Execute(w, h)
}

我在浏览器中得到的错误信息是这样的:

the runtime process gave a bad HTTP response: ''

2015/03/26 11:34:56 http: panic serving 127.0.0.1:43269: runtime error: invalid memory address or nil pointer dereference

我不明白我做错了什么......

最佳答案

template.ParseFiles返回错误

func ParseFiles(filenames ...string) (*Template, error)

If an error occurs, parsing stops and the returned *Template is nil.

如果有问题,你应该检查错误。
这可以解释为什么 't' 可能为零。

一般而言,最佳做法是永远不要忽略错误。

这里:

var t *Template
if t, err := template.ParseFiles("web.html"); err != nil {
// do something
// return err
// or
// panic(err)
}

关于go - 内存错误,Go 中的 html/模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29277525/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com