Golang无法转换(键入* string)以键入字符串

时间:2017-01-13 17:51:58

标签: string go type-conversion

当我尝试编译以下代码时,出现以下错误:

src/public/bundle.js merge=ours src/public/main.min.css merge=ours server/middlewares/https_redirect.js merge=ours

users.go:31: cannot convert pass (type *string) to type string

如何取消引用或将指针转换为字符串文字?

提前致谢。

我正在尝试编译的代码:https://play.golang.org/p/gtMKLNAyNk

1 个答案:

答案 0 :(得分:4)

我认为第9行的if需要改变。 Cursoruser.Username是字符串,所以它们永远不会是零。您需要检查的是这样的空字符串:user.Password

if user.Username != "" && user.Password != "" {

请勿使用user.Password的地址。只需使用pass := &user.Password password := []byte(*pass)

即可

基本上,您的所有问题都是该主题的变体。

通过从代码中删除所有password := []byte(user.Password)&开始解决此问题,它可能会有效(除了这一个:*