gin Http请求Body和Header的获取 request post form Query header

请求参数

POST /post?id=1234&page=1 HTTP/1.1
Content-Type: application/x-www-form-urlencoded
test: test
name=manu&message=this_is_great

服务端代码

package main

import (
"fmt"
"github.com/gin-gonic/gin"
"io/ioutil"
) func main() {
router := gin.Default() router.POST("/test", func(c *gin.Context) {
// 查询请求URL后面拼接的参数
id := c.Query("id")
//查询请求URL后面的参数,如果没有填写默认值
page := c.DefaultQuery("page", "0")
// 从表单中查询参数
name := c.PostForm("name")
//从取得URL中参数,此处URL中没有name字段
name = c.Param("name")
// 从表单中查询参数,,如果没有就获取默认值
message := c.DefaultPostForm("message", "default")
// 获取Body值
bodyBytes, _ := ioutil.ReadAll(c.Request.Body)
// 获取header指定字段
headerTest := c.Request.Header.Get("test")
for k, v := range c.Request.Header {
fmt.Println(k, v)
}
fmt.Printf("id: %s; page: %s; name: %s; message: %s; header_test:%s; bodyBytes:%s", id, page, name, message, headerTest, bodyBytes)
})
router.Run(":8080")
}

postman请求

请求打印

Accept [*/*]
Postman-Token [fb0ab2f2-8653-4fc9-9dce-a18ed349d113]
Accept-Encoding [gzip, deflate]
Content-Length [31]
User-Agent [PostmanRuntime/7.15.0]
Test [test123]
Cache-Control [no-cache]
Connection [keep-alive]
Content-Type [application/x-www-form-urlencoded]
id: 123; page: 1; name: ; message: this_is_great; header_test:test123; bodyBytes:

gin文档:https://gin-gonic.com/zh-cn/docs/examples/query-and-post-form/

gin Http请求Body和Header的获取 request post form Query header的更多相关文章

  1. Retrofit,Okhttp对每个Request统一动态添加header和参数(五)

    文/Tamic 地址:http://blog.csdn.net/sk719887916/article/details/52189602 Header How to Add header to Eve ...

  2. 什么是请求参数、表单参数、url参数、header参数、Cookie参数?一文讲懂

    最近在工作中对 http 的请求参数解析有了进一步的认识,写个小短文记录一下. 回顾下自己的情况,大概就是:有点点网络及编程基础,只需要加深一点点对 HTTP 协议的理解就能弄明白了. 先分享一个小故 ...

  3. 前端axios下载excel,并解决axios返回header无法获取所有数据的问题

    需求:通过后端接口下载excel文件,后端没有文件地址,返回二进制流文件 实现:axios(ajax类似) 主要代码: axios:设置返回数据格式为blob或者arraybuffer 如: var ...

  4. angularjs 文件下载 并 从response header中获取文件名

    最近在做一个下载文件的功能,后台接口给的是二进制流的方式,那么前端要把二进制流下载下来. 这个过程使用$http的get请求,使用Blob接收,倒是没有难度,主要是遇到了,后台的文件名拿不到 的问题. ...

  5. 使用JQuery Ajax请求,在Controller里获取Session

    昨天在做项目的时候,两个平台之间的切换,虽然两个网站的Session都指向了同一台机子,但是通过Ajax方式来请求时,就是不能获取到Session的值. 在调试的过程中发现,原来是Session的Is ...

  6. Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  7. (一)----使用HttpClient发送HTTP请求(通过get方法获取数据)

    (一)----使用HttpClient发送HTTP请求(通过get方法获取数据) 一.HTTP协议初探: HTTP(Hypertext Transfer Protocol)中文 “超文本传输协议”,是 ...

  8. ServletRequest HttpServletRequest 请求方法 获取请求参数 请求转发 请求包含 请求转发与重定向区别 获取请求头字段

      ServletRequest 基本概念 JavaWeb中的 "Request"对象  实际为   HttpServletRequest  或者  ServletRequest, ...

  9. springmvc请求参数的绑定和获取

    请求参数的绑定和获取: 获取页面请求的参数,是javaweb必不可少的一个环节,在struts中,是通过再Action中定义属性,或者Model的方式进行数据绑定和获取.需要提供setter或gett ...

  10. 测开之路一百二十六:flask之获取request请求数据

    可以根据flask的request对象获取所有的请求信息 path = request.path # 获取请求地址method = request.method # 获取请求方法ip = reques ...

随机推荐

  1. [转]CMake学习笔记(一)基本概念介绍、入门教程及CLion安装配置

    原文链接:CMake学习笔记(一)基本概念介绍.入门教程及CLion安装配置

  2. JedisPool和Jedis推荐的生命周期

    在开发 Web 项目时,使用 Jedis 客户端与 Redis 进行交互时,通常建议将 JedisPool 设置为单例或静态的,而 Jedis 实例则不应该是单例的.以下是详细的解释和最佳实践: 1. ...

  3. manim边做边学--动画组合

    动画组合类的作用是将多个动画组合起来,以实现更复杂的动画效果. Manim中有4个用于动画组合的类: AnimationGroup:将多个动画组合在一起同时播放,能一次性呈现多个对象的不同变化 Lag ...

  4. HBase-2JavaAPI操作

    HBase是一个分布式的NoSql数据库,在实际工作当中,我们一般都可以通过JavaAPI来进行各种数据的操作,包括创建表,以及数据的增删改查等等 1 创建maven工程 讲如下内容作为maven工程 ...

  5. mac环境安装Gradle及配置

    mac环境安装Gradle及配置 说明# ​ 最近在学习spring源码, 需要使用到gradle, 便从小白开始吧 ​ ps: 基本按官方操作来完成的~ 前提# ​ 从Gradle官网的安装指导可以 ...

  6. 【分享】 100+ 套开源大数据可视化大屏Html5模板,全网最炫!

    今天给大家分享 100+ 套开源大数据可视化炫酷大屏Html5模板,全网最新.最多.最全.最酷.最炫的大数据可视化模板! 项目介绍 BigDataView提供了100+套大数据可视化炫酷大屏Html5 ...

  7. 基于MPC的快速transformer安全推理框架

    论文:一种基于安全多方计算的快速Transformer安全推理方案-刘伟欣 摘要 数据隐私泄露问题:当前Transformer推理应用中用户的数据会被泄露给模型提供方 安全推理方法:基于MPC实现Tr ...

  8. 小程序image图片缩小不变形

    使用mode =aspectFill 值 说明 scaleToFill 缩放模式,不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素 图片会变形 aspectFit 缩放模式,保持纵横 ...

  9. 应用中的 PostgreSQL项目案例

    title: 应用中的 PostgreSQL项目案例 date: 2025/2/3 updated: 2025/2/3 author: cmdragon excerpt: 随着大数据和云计算的兴起,企 ...

  10. server_patrol.sh服务器巡查脚本

    server_patrol.sh #!/bin/bash #!/usr/bin/expect -f#! auther by wangxp #定义一个变量 LANG="zh_CN.UTF-8& ...