golang模拟编程tcp模拟http(转载)
时间:2019-09-26
本文章向大家介绍golang模拟编程tcp模拟http(转载),主要包括golang模拟编程tcp模拟http(转载)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
package main import ( "fmt" "net" "strconv" ) //用来转化int为string type Int int func (i Int)toStr()string { return strconv.FormatInt(int64(i),10) } func testConn(conn net.Conn){ addr := conn.RemoteAddr() fmt.Println(addr) //返回的http消息体 var respBody = "<h1>Hello World<h1>" i := (Int)(len(respBody)) fmt.Println("响应的消息体长度:"+i.toStr()) //返回的http消息头 var respHeader = "HTTP/1.1 200 OK\n"+ "Content-Type: text/html;charset=ISO-8859-1\n"+ "Content-Length: "+i.toStr() //拼装http返回的消息 resp := respHeader +"\n\r\n"+ respBody fmt.Println(resp) n, _ := conn.Write([]byte(resp)) fmt.Printf("发送的数据数量:%s\n",(Int)(n).toStr()) } func main() { listen, err := net.Listen("tcp", "127.0.0.1:8888") if err !=nil{ fmt.Println(err) return } defer listen.Close() //延时关闭 listen for{ conn, err := listen.Accept() if err !=nil{ fmt.Println(err) continue } go testConn(conn) } }
转载地址:https://blog.csdn.net/weixin_37910453/article/details/86679694
原文地址:https://www.cnblogs.com/K-artorias/p/11589858.html
- HBase-1.3.1 集群搭建
- CentOs7.3 Hadoop 用户 ssh 免密登录
- 手把手教你用Mysql-Cluster-7.5搭建数据库集群
- 简单的java开源图床
- 调度器Quartz的简述与使用总结
- 使用 RecyclerView 实现 Gallery 画廊效果,并控制 Item 停留位置
- linux chmod,chown命令详解
- Quartz任务调度快速入门
- ElasticSearch 安装报错整理
- Docker Compose 1.16.1 安装
- 教你如何用 RecyclerView 做一个好用的轮播图
- Docker-17.06.2 环境搭建
- 我所理解的Intent 和Intent-filter
- 基于 CentOS 搭建微信小程序服务
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- [Oracle 9i安装]Oracle软件的安装
- [AWR报告]Latch Hit %
- [Python运维]Python3.6的安装
- [Python运维]cx_Oracle模块的安装
- C#中抽象类与抽象方法的作用与实例
- C++ 基础扫盲(1)
- [Python运维]使用cx_Oracle连接Oracle(高级篇)
- [Python运维]使用Python发送邮件
- [Python运维]自动化监控Oracle表空间并发送报警
- [Python运维]自动化监控多个Oracle表空间
- c# 动态生成控件
- C# 10分钟完成百度人脸识别——入门篇
- C#开启线程的四种方式
- C++入门实例:创建工程、opencv引用及简单实例
- C#实例:datagridview单元格合并