go 实现简单的http web服务
package main import (
"fmt"
"net/http"
) func hello(w http.ResponseWriter, r *http.Request) {
fmt.Println("handle hello")
fmt.Fprintf(w, "hello12345")
} func index (w http.ResponseWriter, r *http.Request) {
//Fprintf根据format参数生成格式化的字符串并写入w。返回写入的字节数和遇到的任何错误
fmt.Fprintf(w, "this is index")
} func main () {
//HandleFunc注册一个处理器函数handler和对应的模式pattern
//实现路由功能, hello 为函数名
http.HandleFunc("/", hello)
http.HandleFunc("/index", index)
//ListenAndServe监听srv.Addr指定的TCP地址,并且会调用Serve方法接收到的连接。如果srv.Addr为空字符串,会使用":http"。
err := http.ListenAndServe("0.0.0.0:8080", nil) if err != nil {
fmt.Println("http listen failed")
} }
2.客户端
//http 客户端
package main import (
"fmt"
"net/http"
"io/ioutil"
) func main () {
res, err := http.Get("http://www.baidu.com")
if err != nil {
fmt.Println("get faield,error:,", err)
return
} data, err := ioutil.ReadAll(res.Body) if err != nil {
fmt.Println("read err, error:,", err)
return
} fmt.Println(string(data))
}
3. head请求
//head请求实例子
package main import (
"fmt"
"net/http"
"time"
"net"
) var url = []string{
"http://www.baidu.com",
"http://www.gegole.com",
"http://www.taobao.com",
} func main () {
for _, v := range url {
//自己建立客户端
client := http.Client{
Transport: &http.Transport {
Dial: func(network, addr string) (net.Conn, error) {
//设置超时时间
timeout := 2 * time.Second
return net.DialTimeout(network, addr, timeout)
},
},
} resp, err := client.Head(v) if err != nil {
fmt.Println("send head failed, error:", err)
continue
} fmt.Printf("head succ, status: %v \n", resp.Status) }
}
go 实现简单的http web服务的更多相关文章
- 一、搭建简单的axis web服务
转: 一.搭建简单的axis web服务 1.在官方网站下载axis的工程(这个等下就有用的)和源码.jar包等,下载地址是: http://labs.renren.com/apache-mirror ...
- C#最简单的登录Web服务
因为演示程序,所以有下面问题: 1.password是明码传输. 本文在 C#建立最简单的web服务,无需IIS 的基础上完毕. 详细步骤: 一.RequestProcessor添加变量mLogi ...
- 018-Go将磁盘目录实现简单的静态Web服务
package main import( "net/http" ) func main(){ http.Handle("/", http.FileServer( ...
- 如何测试Web服务.2
-->全文字数:2700,需要占用你几分钟的阅读时间 ,您也可以收藏后,时间充足时再阅读- -->上一节讲了<Web服务基础介绍>,本节介绍可用于测试web服务的开源测试工具. ...
- 使用Java+NetBeans设计web服务和页面,用Tomcat部署网页
一 安装NetBeans(自动安装jdk) 二 创建服务器 三 发布服务 一 安装NetBeans(自动安装jdk) 进入oracle的下载界面: http://www.oracle.com/tech ...
- linux系统下开启一个简单的web服务
linux 下开启一个简单的web服务: 首先需要linux下安装nodejs 然后创建一个test.js: vi test.js var http =require("http&quo ...
- web服务的简单介绍及apache服务的安装
一,web服务的作用: 是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档.可以放置网站文件,让全世界浏览: 可以放置数据让全世界下载.目前最主流的三个Web服务器是Ap ...
- node创建一个简单的web服务
本文将如何用node创建一个简单的web服务,过程也很简单呢~ 开始之前要先安装node.js 1.创建一个最简单的服务 // server.js const http = require('http ...
- 用 Java 技术创建 RESTful Web (服务 JAX-RS:一种更为简单、可移植性更好的替代方式)
作者: Dustin Amrhein, 软件工程师, IBM Nick Gallardo, 软件工程师, IBM 出处: http://www.ibm.com/developerworks/cn/we ...
随机推荐
- fdconnection自动重连
fdconnection自动重连 1)设置 FDConnection1.ResourceOptions.AutoReconnect := True; 控制自动连接的恢复. 使用AutoReconnec ...
- 在使用PhpSpreadsheet出现空行导入的问题
在使用PhpSpreadsheet出现空行导入的问题,项目一直报错,原来是读取excel后会多读取几行,或者说读取的行数有错误.因此必须加一个,去除空行.暂时没有研究源码可能源码里面有这样的功能. ...
- ArcPy地理处理工具案例教程—批量添加栅格数据
ArcPy地理处理工具案例教程-批量添加栅格数据 商务合作,科技咨询,版权转让:向日葵,135-4855__4328,xiexiaokui#qq.com 关键字: Arcpy,python,地理处理工 ...
- GIS空间分析案例_图层逐要素导出地理处理工具
GIS空间分析案例_图层逐要素导出地理处理工具 商务合作,科技咨询,版权转让:向日葵,135-4855__4328,xiexiaokui#qq.com 目的:导出图层的每个要素 使用方法:指定输入图层 ...
- 使用 CircleCI 2.0 进行持续集成/持续部署
使用 CircleCI 2.0 进行持续集成/持续部署 - 简书https://www.jianshu.com/p/36af6af74dfc Signup - CircleCIhttps://circ ...
- Ajax serialize()提交form表单不能上传file类型
前台form表单的提交方式有很多种,例如: 1. form表单submit直接提交的方法 2. Ajax提交的方法 3. jquery提交的方法 4. 原生js提交的方法 每一种方法都有它的优势和不足 ...
- 九、postman的自带的鉴权demo
basic authentication https://postman-echo.com/basic-auth username:postman password:password
- ROS学习笔记(一)
运行ROS例程(turtlesim)1)安装turtlesim包sudo apt-get install ros-kinetic-turtlesim2)运行管理器节点roscore3)运行turtle ...
- 【JS】jquery展示JSON插件JSONView
JSONView介绍 jQuery插件,用于显示漂亮的JSON. 官网地址:https://plugins.jquery.com/jsonview/ git地址:https://github.com/ ...
- linux追加所有文件到新的文件(cat)
例子如下,存在test1.txt, test2.txt, test3.txt,现在准备把这三个文件的内容都追加到testall.txt 中 test1.txt 1 2 3 4 5 6 test2.tx ...