美文网首页
go post请求参数无效的巨坑

go post请求参数无效的巨坑

作者: fengbenming | 来源:发表于2019-02-27 18:03 被阅读0次
  1. http的Header设置,按照官网或者大部分文章的设置来就可以,如下:
client := &http.Client{Transport: nil}
    req, err := http.NewRequest("POST", post_login_info_url, strings.NewReader(string(info)))
    if err != nil {
       panic(err)
    }
    //header
    req.Header.Set("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36")
    req.Header.Set("Content-Type", "application/json;charset=UTF-8")
  1. golang的http form data数据设置,golang.com官网的例子和网上大部分的文章使用url.Values最后提交的时候数据不能到达后台。 最后实在没办法,通过http client的transparent结合charles抓包,仔细对比网页直接请求和go请求的差异才把问题解决。 请求的form表单数据是一段json数据,而url.Values不行
    请求头的content-type为application/json
  • 错误的情况
       postValues := url.Values{}
    postValues.Add("expire", "7")
    postValues.Add("referer", "http%3A%2F%2Fwww.jikexueyuan.com%2F")
    postValues.Add("uname", username)
    postValues.Add("password", password)
    postValues.Add("verify", verify_code)
req, err := http.NewRequest("POST", post_login_info_url, strings.NewReader(postValue.Encode()))
  • 正确的姿势
loginInfo := LoginInfo{
        Username: username,
        Password: password,
        LoginYzm: "",
    }

    info, err := json.Marshal(loginInfo)
req, err := http.NewRequest("POST", post_login_info_url, strings.NewReader(string(info)))

相关文章

  • go post请求参数无效的巨坑

    http的Header设置,按照官网或者大部分文章的设置来就可以,如下: golang的http form dat...

  • gf框架 ghttp使用

    案例中包含以下内容 get请求 get请求携带参数 post请求携带参数 post请求发送xml数据 post请求...

  • Gin-获取POST请求参数

    有默认值方式获取POST请求参数 无默认值方式获取POST请求参数 获取POST请求参数的同时,返回参数获取状态,...

  • cookies(8)

    post请求 post和get都可以带着参数请求,不过get请求的参数会在url上显示出来。但post请求的参数就...

  • Python的requests模块

    无参数的get请求 有参数的get请求 POST请求 使用Session

  • GET和POST的区别

    POST请求和GET请求都可以传递参数。POST请求有body,参数数据放在body中。而GET请求参数数据放在h...

  • 8.fiddler前后端接口联调

    1.get请求和post请求参数的传入方式不同,get请求直接跟在地址后面,post请求参数则要写人request...

  • GET、POST请求

    GET请求 POST请求 (可以设置参数)

  • 接口规范纪要

    HTTP请求一般采用GET 和 POST: GET 请求参数格式为Key=Value POST请求参数格式为JSO...

  • jmeter使用初体验。2022/2/21---新增用户

    1,post请求 (Http请求填写参数的时候)Get请求用Parameters,Post请求用Body Data...

网友评论

      本文标题:go post请求参数无效的巨坑

      本文链接:https://www.haomeiwen.com/subject/szafuqtx.html