专栏首页Golang语言社区go语言实现http服务端与客户端

go语言实现http服务端与客户端

go语言的net/http包的使用非常的简单优雅

(1)服务端

package main  
 
import (  
    "flag"  
    "fmt"  
    "net/http"  
)  
 
func main() {  
    host := flag.String("host", "127.0.0.1", "listen host")  
    port := flag.String("port", "80", "listen port")  
 
    http.HandleFunc("/hello", Hello)  
 
    err := http.ListenAndServe(*host+":"+*port, nil)  
 
    if err != nil {  
        panic(err)  
    }  
}  
 
func Hello(w http.ResponseWriter, req *http.Request) {  
<p>   w.Write([]byte("Hello World"))</p>}  

http.HandleFunc用来注册路径处理函数,会根据给定路径的不同,调用不同的函数

http.ListenAndSercer监听iP与端口,本机IP可以省略不写,仅书写冒号加端口,如http.ListenAndSercer(“:8080”, nil)

路径处理函数,参数必须为w http.ResponseWriter和 req *http.Request且不能有返回值

测试结果:成功

(2)客户端

package main  
 
import (  
    "fmt"  
    "io/ioutil"  
    "net/http"  
)  
 
func main() {  
    response, _ := http.Get("http://localhost:80/hello")  
    defer response.Body.Close()  
    body, _ := ioutil.ReadAll(response.Body)  
    fmt.Println(string(body))  
}  

测试结果:成功

本文分享自微信公众号 - Golang语言社区(Golangweb)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-04-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • go语言实现http服务端与客户端

    go语言的net/http包的使用非常的简单优雅 (1)服务端 package main import ( "flag" "fm...

    李海彬
  • go语言实现http服务端与客户端

    go语言的net/http包的使用非常的简单优雅 (1)服务端 [plain] view plain copy package main import ...

    李海彬
  • 50. RESTful API的简单实现 | 厚土Go学习笔记

    RESTfull API是现在很流行的 API 设计风格。众所周知的 HTTP 1.1规范正是基于 REST 架构风格的指导原理来设计的。需要注意的是,REST...

    李海彬
  • go语言实现http服务端与客户端

    go语言的net/http包的使用非常的简单优雅 (1)服务端 package main import ( "flag" "fm...

    李海彬
  • go语言实现http服务端与客户端

    go语言的net/http包的使用非常的简单优雅 (1)服务端 [plain] view plain copy package main import ...

    李海彬
  • go http 分析

    handler 参数(w http.ResponseWriter, r *http.Request)

    solate
  • 使用JWT做RESTful API的身份验证-Go语言实现

    在 使用Golang和MongoDB构建 RESTful API已经实现了一个简单的 RESTful API应用,但是对于有些API接口需要授权之后才能访问,在...

    李海彬
  • SVM公式推导笔记

    参考资料: 对偶函数-http://blog.pluskid.org/?p=702 KTT和拉格朗日乘子-http://www.cnblogs.com/zhan...

    Gxjun
  • 【Golang语言社区】LollipopGo框架之商城项目--路由设置

    /* Golang语言社区(www.Golang.Ltd) 作者:cserli 时间:2018年3月2日 */ package main import ( ...

    李海彬
  • Akka(38): Http:Entityof ByteString-数据传输基础

      我们说过Akka-http是一个好的系统集成工具,集成是通过数据交换方式实现的。Http是个在网上传输和接收的规范协议。所以,在使用Akka-http之前,...

    用户1150956

扫码关注云+社区

领取腾讯云代金券