当前位置: 首页 > news >正文

Golang基本的网络编程

Go语言基本的Web服务器实现

Go 语言中的 http 包提供了创建 http 服务或者访问 http 服务所需要的能力,不需要额外的依赖。
Go语言在Web服务器中主要使用到了 “net/http” 库函数,通过分析请求的URL来实现参数的接收。
下面介绍了http 中Web应用的基本操作,主要包括路由器的定义、路由的设备、请求参数的提取。

package mainimport ("fmt""log""net/http""sync"
)var mu sync.Mutex
var count intfunc main() {//定义路由http.HandleFunc("/", handler)http.HandleFunc("/counter", counter)http.HandleFunc("/parse", reParse)log.Fatal(http.ListenAndServe("localhost:8081", nil))
}//接口处理函数
func handler(w http.ResponseWriter, r *http.Request) {fmt.Fprintf(w, "respons = %s", "Hello Jack!")
}//存在多线程的公有变量时,需要使用锁来确保数据的安全。
func counter(w http.ResponseWriter, r *http.Request) {mu.Lock()count++fmt.Fprintf(w, "counter = %d", count)mu.Unlock()
}//通过获取*http.Request请求参数来分析出用户请求
func reParse(w http.ResponseWriter, r *http.Request) {parse := r.URL.Query()fmt.Fprintf(w, "parse = %s", parse)
}//输入://输出://URL: http://127.0.0.1:8081///URL: http://127.0.0.1:8081/counter//URL: http://127.0.0.1:8081/parse?k=2

相关文章:

Golang基本的网络编程

Go语言基本的Web服务器实现 Go 语言中的 http 包提供了创建 http 服务或者访问 http 服务所需要的能力,不需要额外的依赖。 Go语言在Web服务器中主要使用到了 “net/http” 库函数,通过分析请求的URL来实现参数的接收。 下面介绍了http 中Web应用的基本…...

Postgresql的一个bug_涉及归档和pg_wal

故障描述: 服务器ocmpgdbprod1,是流复制主节点,它的从节点是ocmpgdbprod2,两个节点的Postgresql数据库版本都是PostgreSQL 11.6,主节点ocmpgdbprod1配置了pg_wal归档,从节点ocmpgdbprod2没有配置pg_wal归档…...

轻量、便捷、高效—经纬恒润AETP助力车载以太网测试

随着自动驾驶技术和智能座舱的不断发展,高宽带、高速率的数据通信对主干网提出了稳定、高效的传输要求,CAN(FD)、LIN已无法充分满足汽车的通信需求。车载以太网作为一种快速且扩展性好的网络技术,已经逐步成为了汽车主干网的首选。 此外&…...

【跟小嘉学 Rust 编程】二十四、内联汇编(inline assembly)

系列文章目录 【跟小嘉学 Rust 编程】一、Rust 编程基础 【跟小嘉学 Rust 编程】二、Rust 包管理工具使用 【跟小嘉学 Rust 编程】三、Rust 的基本程序概念 【跟小嘉学 Rust 编程】四、理解 Rust 的所有权概念 【跟小嘉学 Rust 编程】五、使用结构体关联结构化数据 【跟小嘉学…...

综合实训-------成绩管理系统 V1.1

综合实训-------成绩管理系统 V1.1 1、一维数组数据double 2、我们用元素的位置来当学号。 1、录入数据 【5个数据】或【通过文件的方式取数据】 2、显示数据 3、添加一条记录 4、修改一条记录 5、删除一条记录 6、查找一条记录。【输入学号,显示成绩】 7、统计。【…...

13.108.Spark 优化、Spark优化与hive的区别、SparkSQL启动参数调优、四川任务优化实践:执行效率提升50%以上

13.108.Spark 优化 1.1.25.Spark优化与hive的区别 1.1.26.SparkSQL启动参数调优 1.1.27.四川任务优化实践:执行效率提升50%以上 13.108.Spark 优化: 1.1.25.Spark优化与hive的区别 先理解spark与mapreduce的本质区别,算子之间(…...

大模型综述论文笔记6-15

这里写自定义目录标题 KeywordsBackgroud for LLMsTechnical Evolution of GPT-series ModelsResearch of OpenAI on LLMs can be roughly divided into the following stagesEarly ExplorationsCapacity LeapCapacity EnhancementThe Milestones of Language Models Resources…...

树的介绍(C语言版)

前言 在数据结构中树是一种很重要的数据结构,很多其他的数据结构和算法都是通过树衍生出来的,比如:堆,AVL树,红黑色等本质上都是一棵树,他们只是树的一种特殊结构,还有其他比如linux系统的文件系…...

Android studio实现圆形进度条

参考博客 效果图 MainActivity import androidx.appcompat.app.AppCompatActivity; import android.graphics.Color; import android.os.Bundle; import android.widget.TextView;import java.util.Timer; import java.util.TimerTask;public class MainActivity extends App…...

基于Halcon的喷码识别方法

具体步骤如下: 1. 读入一幅图片(彩色或黑白); 2. 将RGB图像转化为灰度图像; 3. 提取图片中的圆点特征(喷码图片中多是圆点特征),在Halcon中dots_image() 函数非常适合喷码检测; 4. 通过设定阈值,增强明显特征部分; 5. 进行一系列形态学操作(如闭运算等),将…...

【Sword系列】Vulnhub靶机HACKADEMIC: RTB1 writeup

靶机介绍 官方下载地址:https://www.vulnhub.com/entry/hackademic-rtb1,17/ 需要读取靶机的root目录下key.txt 运行环境: 虚拟机网络设置的是NAT模式 靶机:IP地址:192.168.233.131 攻击机:kali linux,IP地…...

idea使用maven时的java.lang.IllegalArgumentException: Malformed \uxxxx encoding问题解决

idea使用maven时的java.lang.IllegalArgumentException: Malformed \uxxxx encoding问题解决 欢迎使用Markdown编辑器1、使用maven clean install -X会提示报错日志2、在Poperties.java文件的这一行打上断点3、maven debug进行调试4、运行到断点位置后,查看报错char…...

linux深入理解多进程间通信

1.进程间通信 1.1 进程间通信目的 数据传输:一个进程需要将它的数据发送给另一个进程资源共享:多个进程之间共享同样的资源。通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件…...

使用自定义注解+aop实现公共字段的填充

问题描述:对于每个表都有cratetime,updatetime,createby,updateby字段,每次插入数据或者更改数据的时候,都需要对这几个字段进行设置。 Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) public interface AutoFill {//数据库…...

Unity 安卓(Android)端AVProVideo插件播放不了视频,屏幕一闪一闪的

编辑器运行没有问题,但是安卓就有问题,在平板上运行就会报错: vulkan graphics API is notsupported 说不支持Vulkan图形API,解决方法:把Vulkan删除掉...

无涯教程-JavaScript - DMIN函数

描述 DMIN函数返回列表或数据库中符合您指定条件的列中的最小数字。 语法 DMIN (database, field, criteria)争论 Argument描述Required/Optionaldatabase 组成列表或数据库的单元格范围。 数据库是相关数据的列表,其中相关信息的行是记录,数据的列是字段。列表的第一行包含…...

GaussDB数据库SQL系列-层次递归查询

目录 一、前言 二、GuassDB数据库层次递归查询概念 三、GaussDB数据库层次递归查询实验示例 1、创建实验表 2、sys_connect_by_path(col, separator) 3、connect_by_root(col) 4、WITH RECURSIVE 四、递归查询的优缺点 1、优点 2、缺点 五、总结 一、前言 层次递归…...

pycharm 下jupyter noteobook显示黑白图片不正常

背景现象: 1、显示一张黑白图片,颜色反过来了。 from IPython.display import display source Image.open(examples/images/forest_pruned.bmp) display(source) 2、原因: 是pycharm会在深色皮肤下默认反转jupyter notebook输出图片的颜…...

Java异常(Error与Exception)与常见异常处理——第八讲

前言 前面我们讲解了Java的基础语法以及面向对象的思想,相信大家已经基本掌握了Java的基本编程。在之前代码中,我们也看到代码写错了编译器会提示报错,或者编译器没有提示,但是运行的时候报错了,比如前面的数组查询下标超过数组的长度。所以在使用计算机语言进行项目开发的…...

【JAVA】多态

作者主页:paper jie_的博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文录入于《JAVASE语法系列》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和…...

手把手教你用Wireshark和VirtualBox日志诊断eNSP错误代码40(保姆级排错流程)

从日志分析到网络诊断:eNSP错误代码40的深度排错指南 当eNSP模拟器弹出"错误代码40"的红色警告时,大多数用户的第一反应是寻找快速解决方案。但真正的网络工程师会告诉你,这个数字背后隐藏着虚拟网络世界的完整故事。本文将带您穿…...

AI 智能体 8 层架构:生产级系统构建指南

AI 智能体(Agentic AI)革命的关键不在更好的提示词,而在于系统化的架构设计。随着企业竞相部署能够自主感知、推理、规划和行动的 AI 智能体(AI Agent),真正的挑战已经从"我们能构建吗?“转变为"…...

2026产品专员学习数据分析的价值与路径

一、数据分析对产品专员的核心价值数据分析能力帮助产品专员量化用户行为、验证假设并优化产品决策。通过数据驱动的方法,减少主观猜测,提升需求优先级判断的准确性。掌握基础分析工具(如Excel、SQL)和可视化工具(如Ta…...

反向Shell隐藏技术深度解析:从进程伪装到网络隐匿的攻防实践

1. 项目概述:从“隐藏”到“隐匿”的攻防博弈在网络安全领域,反向Shell是一种经典且常见的远程控制手段。简单来说,它让被控端主动连接控制端,从而绕过防火墙等入站限制。然而,一个明晃晃的、持续存在的网络连接或进程…...

5分钟快速上手Vue3思维导图:打造专业级数据可视化应用

5分钟快速上手Vue3思维导图:打造专业级数据可视化应用 【免费下载链接】vue3-mindmap Mindmap component for Vue3 项目地址: https://gitcode.com/gh_mirrors/vu/vue3-mindmap Vue3-Mindmap是一个基于Vue 3和TypeScript构建的现代化思维导图组件&#xff0c…...

PyMol实战:从PDB下载1lEP到绘制靶点-药物相互作用图的保姆级教程

PyMol实战:从PDB下载1lEP到绘制靶点-药物相互作用图的保姆级教程 在药物研发和结构生物学领域,可视化分析靶点-药物相互作用是理解分子识别机制的关键环节。PyMol作为一款专业的分子可视化工具,能够帮助研究人员从原子层面解析蛋白质-配体复合…...

从AstraPro深度相机到机械臂抓取:ROS2三维手眼标定全流程实战(含D2C配准)

从AstraPro深度相机到机械臂抓取:ROS2三维手眼标定全流程实战 在工业自动化和机器人研究领域,三维手眼标定是实现精准视觉引导操作的核心技术。当我们需要让机械臂在复杂环境中自主完成分拣、装配或检测任务时,如何确保相机"看到"的…...

北京昌平浇筑阁楼测评:天顺诚达施工优但服务待提升,适合这类

本次测评聚焦于北京昌平区浇筑阁楼领域,旨在为对该服务感兴趣的人群提供客观、真实的数据和信息,帮助大家了解各相关企业的实际情况。参与本次测评的企业为北京天顺诚达建筑工程有限公司。需要声明的是,本次测评均基于真实数据与体验&#xf…...

AndroidCupsPrint:构建企业级Android打印服务架构的技术实践

AndroidCupsPrint:构建企业级Android打印服务架构的技术实践 【免费下载链接】AndroidCupsPrint Port of cups4j to Android. Allows wireless printing from any Android device to any CUPS-enabled print server or network printer. 项目地址: https://gitcod…...

RT-Thread开发者大会技术解析:从RTOS内核到AIoT平台实战指南

1. 项目概述:一场国产嵌入式技术的年度盛会 2021年的RT-Thread开发者大会,对于当时国内嵌入式软件圈的从业者来说,绝对是一个绕不开的关键节点。那一年,整个行业正处在一个微妙的转折期:一方面,芯片供应链…...