随笔分类 -  Web

摘要:Hertz 中定义的供用户使用的常量。 在 Hertz 中定义了一系列的常量以供用户使用,它们都位于 github.com/cloudwego/hertz/pkg/protocol/consts HTTP 请求方法 // HTTP methods were copied from net/http. 阅读全文
posted @ 2025-03-03 21:10 厚礼蝎 阅读(26) 评论(0) 推荐(0)
摘要:仅供娱乐 代码部分 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <ti 阅读全文
posted @ 2025-03-03 00:30 厚礼蝎 阅读(34) 评论(0) 推荐(0)
摘要:<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>课堂随机点名 阅读全文
posted @ 2025-03-02 23:44 厚礼蝎 阅读(57) 评论(0) 推荐(0)
摘要:Hertz 提供的钩子函数功能。 钩子函数(Hooks)是一个通用的概念,表示某事件触发时所伴随的操作。 Hertz 提供了全局的 Hook 注入能力,用于在服务触发启动后和退出前注入自己的处理逻辑。 阶段 执行方式 存储 签名 StartHook 端口监听器前执行 顺序依次执行 OnRun 属性存 阅读全文
posted @ 2025-03-02 10:43 厚礼蝎 阅读(39) 评论(0) 推荐(0)
摘要:重试 Hertz 为用户提供的自定义重试逻辑。 Hertz 为用户提供了自定义的重试逻辑,下面来看一下 Client 的 Retry 使用方法。注意:Hertz 版本 >= v0.4.0 Retry 次数及延迟策略配置 首先创建 Client,使用配置项 WithRetryConfig() 来配置 阅读全文
posted @ 2025-03-02 10:22 厚礼蝎 阅读(92) 评论(0) 推荐(0)
摘要:正向代理 正向代理是一种特殊的网络服务,允许一个网络终端(一般为客户端)通过这个服务与另一个网络终端(一般为服务器)进行非直接的连接。 一些网关、路由器等网络设备具备网络代理功能。 一般认为代理服务有利于保障网络终端的隐私或安全,防止攻击。 一个完整的代理请求过程为:客户端(Client)首先与代理 阅读全文
posted @ 2025-03-01 22:10 厚礼蝎 阅读(39) 评论(0) 推荐(0)
摘要:快速开始 package main import ( "context" "fmt" "github.com/cloudwego/hertz/pkg/app/client" "github.com/cloudwego/hertz/pkg/common/hlog" "github.com/cloudw 阅读全文
posted @ 2025-02-28 00:20 厚礼蝎 阅读(72) 评论(0) 推荐(0)
摘要:Header // 设置响应的 Content-Type 头,告诉客户端返回的数据类型(如 "application/json")。 func (ctx *RequestContext) SetContentType(contentType string) // 设置响应的 Content-Type 阅读全文
posted @ 2025-02-27 16:23 厚礼蝎 阅读(110) 评论(0) 推荐(0)
摘要:URI func (ctx *RequestContext) Host() []byte func (ctx *RequestContext) FullPath() string func (ctx *RequestContext) SetFullPath(p string) func (ctx * 阅读全文
posted @ 2025-02-26 10:40 厚礼蝎 阅读(156) 评论(0) 推荐(0)
摘要:底层网络库 Hertz 默认集成了 Netpoll 和 Golang 原生网络库两个网络库,用户可以根据自己的场景选择合适的网络库以达到最佳性能。 Netpoll简介 Netpoll 是由 字节跳动 开发的高性能 NIO(Non-blocking I/O)网络库,专注于 RPC 场景。 RPC 通常 阅读全文
posted @ 2025-02-25 09:45 厚礼蝎 阅读(98) 评论(0) 推荐(0)
摘要:路由注册 Hertz 提供了 GET、POST、PUT、DELETE、ANY 等方法用于注册路由。 方法 介绍 Hertz.GET 用于注册 HTTP Method 为 GET 的方法 Hertz.POST 用于注册 HTTP Method 为 POST 的方法 Hertz.DELETE 用于注册 阅读全文
posted @ 2025-02-25 09:29 厚礼蝎 阅读(85) 评论(0) 推荐(0)
摘要:server.Hertz 是 Hertz 的核心类型,它由 route.Engine 以及 signalWaiter 组成,Hertz 服务器的启动、路由注册、中间件注册以及退出等重要方法均包含在 server.Hertz 中。 以下是 server.Hertz 的定义: // Hertz is t 阅读全文
posted @ 2025-02-24 16:46 厚礼蝎 阅读(114) 评论(0) 推荐(0)
摘要:简介 Hertz[həːts] 是一个 Golang 微服务 HTTP 框架,在设计之初参考了其他开源框架 fasthttp、gin、echo 的优势, 并结合字节跳动内部的需求,使其具有高易用性、高性能、高扩展性等特点,目前在字节跳动内部已广泛使用。 如今越来越多的微服务选择使用 Golang,如 阅读全文
posted @ 2025-02-24 16:24 厚礼蝎 阅读(238) 评论(0) 推荐(0)
摘要:Websocket简介 在HTML5中新增了WebSocket协议,它是在一个TCP连接上实现全双工通信的协议。 传统HTTP协议中,一次通信需要浏览器端主动发出请求后,由服务器端响应内容,建立的TCP连接断开,且无状态。而且必须是客户端主动请求后,服务器端才能响应,服务器端不能主动向浏览器端发送数 阅读全文
posted @ 2024-02-23 10:18 厚礼蝎 阅读(128) 评论(0) 推荐(0)
摘要:问题 在写前端的时候,偶然发现,当同一个标签同时绑定了 双击事件 和 单击事件 在触发 双击事件 的时候,会先触发两次 单击事件,这显然是不符合预期的 解决办法 可以通过增加一个延时来解决这个问题 写一个按钮 这里写一个按钮来演示 <body> <button onclick="handleClic 阅读全文
posted @ 2024-02-08 10:16 厚礼蝎 阅读(741) 评论(0) 推荐(0)
摘要:同源策略 在浏览器中,内容是很开放的,任何资源都可以接入其中,如 JavaScript 文件、图片、音频、视频等资源,甚至可以下载其他站点的可执行文件。 但也不是说浏览器就是完全自由的,如果不加以控制,就会出现一些不可控的局面,例如会出现一些安全问题,如: 跨站脚本攻击(XSS) SQL 注入攻击 阅读全文
posted @ 2023-12-01 15:20 厚礼蝎 阅读(62) 评论(0) 推荐(0)