资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

Golang怎么接收前端的参数

Golang怎么接收前端的参数?其实并不是特别的难,只需要使用Golang开发web后台,需要接收前端传来的参数并作出响应就可以了,下面小编给你详细讲解吧。

成都创新互联公司主营淄川网站建设的网络公司,主营网站建设方案,成都app开发,淄川h5小程序开发搭建,淄川网站营销推广欢迎淄川等地区企业咨询

Golang怎么接收前端的参数

1、首先,创建一个Golang web服务。

package main

import (
    "log"
    "fmt"
    "net/http"
    "html/template"
)

// 返回静态页面
func handleIndex(writer http.ResponseWriter, request *http.Request) {
    t, _ := template.ParseFiles("index.html")
    t.Execute(writer, nil)
}

func main() {
    http.HandleFunc("/", handleIndex)

    fmt.Println("Running at port 3000 ...")

    err := http.ListenAndServe(":3000", nil)

    if err != nil {
        log.Fatal("ListenAndServe: ", err.Error())
    }
}

index.html




  
  Document


  Golang GET&POST

2、然后编写前端get post请求,使用了axios库,请自行引入。

3、接着,在Golang中实现接收get post参数即可。

一、Golang接收前端GET请求的参数

// 处理GET请求
func handleGet(writer http.ResponseWriter, request *http.Request) {
    query := request.URL.Query()

    // 第一种方式
    // id := query["id"][0]

    // 第二种方式
    id := query.Get("id")

    fmt.Printf("GET: id=%s\n", id)

    fmt.Fprintf(writer, `{"code":0}`)
}

func main() {
    // ...

    http.HandleFunc("/testGet", handleGet)

    // ...
}

服务端打印如下:

GET: id=1

二、Golang接收前端POST请求的参数

// 引入encoding/json包
import (
    // ...
    "encoding/json"
)

// 处理application/json类型的POST请求
func handlePostJson(writer http.ResponseWriter, request *http.Request) {
    // 根据请求body创建一个json解析器实例
    decoder := json.NewDecoder(request.Body)

    // 用于存放参数key=value数据
    var params map[string]string

    // 解析参数 存入map
    decoder.Decode(¶ms)

    fmt.Printf("POST json: username=%s, password=%s\n", params["username"], params["password"])

    fmt.Fprintf(writer, `{"code":0}`)
}

func main() {
    // ...

    http.HandleFunc("/testPostJson", handlePostJson)

    // ...
}

服务端打印如下:

POST json: username=admin, password=123

以上就是Golang怎么接收前端的参数的详细内容,如果想了解更多请关注创新互联行业资讯的其它相关文章!


当前文章:Golang怎么接收前端的参数
浏览地址:http://cdkjz.cn/article/goscgd.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220