Golang html GET 表单方法值未填充

我有一个服务器代码和一个 html 表单来搜索字符串。服务器处理程序获取字符串并搜索相同的字符串。但我在这里面临两个问题。


1.即使我将其设为 POST,方法名称也始终为 GET。


2.我无法在服务器端接收表单值


服务器代码在这里,


package main


import (

    "flag"

    "fmt"

    "html/template"

    "io/ioutil"

    "log"

    "net"

    "net/http"

    "regexp"

    //"bytes"

)


var (

    addr = flag.Bool("addr", false, "find open address and print to final-port.txt")

)


type Page struct {

    Title string

    Body  []byte

}


type UserInfo struct {

    Title string

    UserId   string

    UserName string

}


func (p *Page) save() error {

    filename := "projects/" + p.Title + ".txt"

    return ioutil.WriteFile(filename, p.Body, 0600)

}


func loadPage(title string) (*Page, error) {

    filename := "projects/" + title + ".txt"

    body, err := ioutil.ReadFile(filename)

    if err != nil {

        return nil, err

    }

    return &Page{Title: title, Body: body}, nil

}


//Home page handler

//Hard coding the user name

func homeHandler(w http.ResponseWriter, r *http.Request, title string) {

    p := &UserInfo{Title: "Project Tube",UserId: "dxa132330", UserName: "Dinesh Appavoo"}

    renderTemplate(w, "home", p)

}

我在 searchHandler 函数中遇到了问题。我的 html 代码在这里


{{ template "header.html" . }}

<br><br>

<div class="container">

    <form action="/searchproject" method="GET">

        <div class="form-group">

            <input type="text" class="form-control" name="search_string">

        </div>

        <button type="submit" class="btn btn-success">Search</button>

    </form>

</div>

服务器控制台日志如下,


method: GET

Form Data :

Form Data  1:  map[]

有人可以帮我吗?谢谢。


守着一只汪
浏览 180回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go