我是靠谱客的博主 超帅书包,最近开发中收集的这篇文章主要介绍Go语言服务器开发实现最简单HTTP的GET与POST接口,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本文实例讲述了Go语言服务器开发实现最简单HTTP的GET与POST接口。分享给大家供大家参考。具体分析如下:

Go语言提供了http包,可以很轻松的开发http接口。以下为示例代码:

复制代码 代码如下:
package webserver 
 
import ( 
    "encoding/json" 
    "fmt" 
    "net/http" 
    "time" 

 
func WebServerBase() { 
    fmt.Println("This is webserver base!") 
 
    //第一个参数为客户端发起http请求时的接口名,第二个参数是一个func,负责处理这个请求。 
    http.HandleFunc("/login", loginTask) 
 
    //服务器要监听的主机地址和端口号 
    err := http.ListenAndServe("192.168.1.27:8081", nil) 
 
    if err != nil { 
        fmt.Println("ListenAndServe error: ", err.Error()) 
    } 

 
func loginTask(w http.ResponseWriter, req *http.Request) { 
    fmt.Println("loginTask is running...") 
 
    //模拟延时 
    time.Sleep(time.Second * 2) 
 
    //获取客户端通过GET/POST方式传递的参数 
    req.ParseForm() 
    param_userName, found1 := req.Form["userName"] 
    param_password, found2 := req.Form["password"] 
 
    if !(found1 && found2) { 
        fmt.Fprint(w, "请勿非法访问") 
        return 
    } 
 
    result := NewBaseJsonBean() 
    userName := param_userName[0] 
    password := param_password[0] 
 
    s := "userName:" + userName + ",password:" + password 
    fmt.Println(s) 
 
    if userName == "zhangsan" && password == "123456" { 
        result.Code = 100 
        result.Message = "登录成功" 
    } else { 
        result.Code = 101 
        result.Message = "用户名或密码不正确" 
    } 
 
        //向客户端返回JSON数据 
    bytes, _ := json.Marshal(result) 
    fmt.Fprint(w, string(bytes)) 
}

NewBaseJsonBean用于创建一个struct对象:

复制代码 代码如下:
package webserver 
 
type BaseJsonBean struct { 
    Code    int         `json:"code"` 
    Data    interface{} `json:"data"` 
    Message string      `json:"message"` 

 
func NewBaseJsonBean() *BaseJsonBean { 
    return &BaseJsonBean{} 
}

希望本文所述对大家的Go语言程序设计有所帮助。

最后

以上就是超帅书包为你收集整理的Go语言服务器开发实现最简单HTTP的GET与POST接口的全部内容,希望文章能够帮你解决Go语言服务器开发实现最简单HTTP的GET与POST接口所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(94)

评论列表共有 0 条评论

立即
投稿
返回
顶部