跳转至

ev-glaze-expected-parse-url-003

字段 值
项目 stephenberry/glaze
固定 commit d78832c82289
路径 include/glaze/net/http_client.hpp
行段 L423-L428
特性 std::expected
许可证 MIT
代码来源 项目源码
级别 manual
审核 zyuhao7 @ 2026-10-29
测试代码 否
发现方式 regex

用法

URL 解析失败时返回 std::unexpected,把系统错误码保留在返回类型里

为什么典型

用标准 error_code 作为错误类型,避免自定义错误类,同时让调用方在同一返回通道处理解析失败。

摘录

   inline std::expected<url_parts, std::error_code> parse_url(std::string_view url)
   {
      // Check minimum length
      if (url.size() < 8) { // Minimum for "http://" + 1 char host
         return std::unexpected(std::make_error_code(std::errc::invalid_argument));
      }

备注

生产路径:Glaze 的 HTTP 客户端 URL 解析。

查看固定 commit 源码 · 返回证据索引