duanli0687 2014-12-22 15:10
浏览 78
已采纳

Goji-如何通过变量获取对GoLang的HTML GET表单请求?

Please take a look at my two files main.go and index.html. I am starting with the Goji web microframework. Find Snippets at the Goji web framework.

In my example I can see the HTML form webpage index.html at @Localhost8000 and I can type in the input field for example "test" and press the submit button. In the terminal output I can see that it was send: "Started GET "/?name=test" from 127.0.0.1:51580"

How can I get a HTML GET form request to golang in a variable? I think it will be going with goji.Get. I tried several ways but I get it not to run. I am happy if somebody can give me a hint or a snippet. I still learning golang.

File main.go:

package main

import (
     "net/http"
     "github.com/zenazn/goji"
 )


 func main() {
     staticFilesLocation := "public"
     goji.Handle("/", http.FileServer(http.Dir(staticFilesLocation)))
     goji.Serve()
 }

File index.html:

<html>
<head>
</head>
<body>
<!-- Simple form which will send a GET request -->
<form action="">
  <label for="GET-name">Name:</label>
  <input id="GET-name" type="text" name="name">
  <input type="submit" value="sendGET">
</form>
</body>
</html>

File loacations:

src/formgoji/main.go
src/formgoji/public/index.html

Output - start in terminal window:

$ go run main.go
2014/12/22 14:38:40.984448 Starting Goji on [::]:8000
2014/12/22 14:38:48.789214 [xxxx/yyyy-000001] Started GET "/" from 127.0.0.1:51580
2014/12/22 14:38:48.789332 [xxxx/yyyy-000001] Returning 304 in 74.8µs
2014/12/22 14:39:11.239039 [xxxx/yyyy-000002] Started GET "/?name=test" from   127.0.0.1:51580
2014/12/22 14:39:11.239149 [xxxx/yyyy-000002] Returning 304 in 66.489µs

A similiar question was here at stackoverflow: parse-input-from-html-form-in-golang This example I couldn't run.I think this has to do where your files are located and how is your @localhost defined. This is in this example missing.

  • 写回答

1条回答 默认 最新

  • doupo6967 2014-12-22 21:16
    关注

    Goji's advertised as a minimalistic framework and doesn't seem to be helping you much in terms of form submissions, so I think you'll need to look to standard Go.

    For an example you might check out how the body attribute is managed in the following examples, taken from Go's documentation:

    Editing Pages (represented as a textarea)

    Saving Pages (retrieved from Request using FormValue())

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 YOLO检测微调结果p为1
  • ¥20 求快手直播间榜单匿名采集ID用户名简单能学会的
  • ¥15 DS18B20内部ADC模数转换器
  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题