- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个非常奇怪的问题,我要么真的瞎了,要么这是某种错误。我有以下 http.Handler:
func ServeHTTP(w http.ResponseWriter, r *http.Request) {
err := r.ParseForm()
if err != nil {
log.Println("Error while parsing form data")
return
}
log.Println("Printing r.PostForm:")
for key, values := range r.PostForm { // range over map
for _, value := range values { // range over []string
log.Println(key, value)
}
}
b, _ := ioutil.ReadAll(r.Body)
s := string(b)
log.Println("Printing body: ",s)
}
现在,当使用以下 FORM-Data 向绑定(bind)到此处理程序的 url 发送 PUT 请求时:
Name=someName
Version=1.0.0
PLanguage=java
GitRepo=someRepo
这始终是输出:
Printing r.PostForm:
Printing body: Name=someName&Version=1.0.0&PLanguage=java&GitRepo=someRepo
我已经尝试查找原因大约 2 个小时了,我只是不知道这里到底出了什么问题。解析 Form-Data 没有错误,但 r.PostForm 映射始终为空(我也尝试了 r.Form,结果相同)。因此,为了调试,我添加了打印正文的部分,只是为了确保其中确实有一些数据——而且确实如此。我真的很感激这里的任何帮助。提前致谢!
最佳答案
您需要设置“Content-Type” header 。
如果没有设置 header ,则根据 RFC 2616 使用“application/octet-stream”。
长话短说,这是一种二进制格式,因此您的正文不会被解析为 Form
。
关于http - r.PostForm 和 r.Form 总是空的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42012874/
如何使用RCurl构造这个POST http请求? POST http://localhost:7474/db/data/index/node/ Accept: application/json; c
在使用 net/http 和 net/url 作为单个键值时出现此错误 multiple-value http.PostForm() in single-value context 最佳答案 您的错误
我一直在尝试读取由网站中的 Post Submit 发送的数组中包含的值。 打印 r.PostForm 数据返回这张 map : map[myArray[0].val1:[foo1] myArray[
在我的项目中,我尝试使用 opentracing 实现分布式跟踪。 . 我的微服务具有以下结构。 -- API-Gateway |_ User-Service |_ Not
我正在尝试从网站上抓取一些数据。这是我通常会在 Perl 中做的事情,但我真的很想戒掉 Perl。 (我不是在贬低 Perl;它是一个很有值(value)的工具,但我对十多年后我仍然为这门语言苦苦挣扎
我正在编写代码以访问 cloudfoundry 平台并提取已推送到云端的所有应用程序的数据摘要。 我可以单独访问每个应用程序并通过 http.GET 请求显示与每个应用程序相关的数据,但我希望能够更新
是否有使用 Gin Gonic 列出/遍历所有帖子值的简单方法? (去) 我试过: c.Request.ParseForm() for key, value := range c.Request.Po
我有一个非常奇怪的问题,我要么真的瞎了,要么这是某种错误。我有以下 http.Handler: func ServeHTTP(w http.ResponseWriter, r *http.Reques
我正在尝试使用 Go/Gin Gonic 从 HTML 表单中捕获一组 Post 值——在 PHP 中我会使用类似的东西: 然而,这似乎不适用于 Gin Gonic(或 Go)。 我也
我正在尝试将 JSON 数据从 javascript 页面发布到 golang 服务器,但我无法在两端使用 SO 接受的答案找到任何 JSON 数据的踪迹。 This post展示了我用 Javasc
我在 GAE golang 中有一个简单的函数: func Call(c appengine.Context, guid string, function string, parameters map
我正在尝试使用 golang 发布表单。我的代码在下面 client := urlfetch.Client(c) resp, err := client.PostForm("example.com",
我是一名优秀的程序员,十分优秀!