网络编程
已收录文章:34篇
-
前面已经介绍了如何通过 Go语言搭建一个 Web 服务,我们可以看到简单应用一个 net/http 包就方便的搭建起来了。那么 Go语言在底层到底是怎么做的呢?web 工作方式的几个概念以下均是服务器端169 收藏
-
给管理接口增加 IP 白名单时,字符串比较、IPv4 与 IPv6 混用、掩码边界都容易出错。本文使用 Go netip.ParsePrefix 和 Prefix.Contains 搭建可复用的 CIDR 白名单校验器,补齐配置检查、匹配顺序和失败回归用例。167 收藏
-
Go语言内置的 net/http 包提供了最简洁的 HTTP 客户端实现,我们无需借助第三方网络通信库(比如 libcurl)就可以直接使用 HTTP 中用得最多的 GET 和 POST 方式请求数据。基本方法net/http 包的 Client 类163 收藏
-
前面《Cookie设置与读取》一节我们介绍了 Cookie 的应用,本节我们将讲解 session 的应用,我们知道 session 是在服务器端实现的一种用户和服务器之间认证的解决方案,目前 Go语言标准包没有为 ses151 收藏
-
在常见的 Web 框架中,router 是必备的组件。Go语言圈子里 router 也时常被称为 http 的 multiplexer。通过前面几节的学习,我们已经知道了如何用 http 标准库中内置的 mux 来完成简单的路由功能了。如151 收藏
-
PHP 的 TCP 探活不该只看一个布尔值。本文用 stream_socket_client() 拆解 DNS、连接超时、端口拒绝、上下文参数和日志归因,给出可回归的最小检查器。130 收藏
-
网络是一个自然使用并发的领域,因为服务器通常一次处理很多来自客户端的连接,每一个客户端通常和其他客户端保持独立。本节介绍 net 包,它提供构建客户端和服务器程序的组件,这些程121 收藏
-
本节将对 db/sql 官方标准库作一些简单分析,并介绍一些应用比较广泛的开源 ORM 和 SQL Builder。并从企业级应用开发和公司架构的角度来分析哪种技术栈对于现代的企业级应用更为合适。从 databas121 收藏
-
用户可控 URL 一旦进入 Go HTTP 客户端,字符串黑名单远远不够。本文从一次图片抓取接口的故障切入,拆解 scheme、端口、DNS 解析、私网地址和重定向的校验顺序,并给出可测试的最小实现边界。116 收藏
-
我们已经知道,Go语言支持接口。在 Go语言里,接口是一组预定义方法的组合,任何一个类型均可通过实现接口预定义的方法来实现,且无需显示声明,所以没有任何方法的空接口可以代表任何101 收藏