npm 包 @jsenv/url-meta 使用教程

阅读时长 4 分钟读完

介绍

@jsenv/url-meta 是一个用于从 URL 中提取元数据的 JavaScript 库。它支持从链接中提取标题、描述、图像等元数据信息。它可以帮助开发者快速构建一个 URL 分享预览的功能。

安装

使用方法

引入

调用 fetchUrlMeta 函数

配置项

fetchUrlMeta 函数可接收两个参数,第一个是 URL,第二个是可选的配置项对象。下面是可用的配置项:

  • charset:文字编码,默认为 "utf8"
  • requestTimeLimit:请求超时时间,默认为 5000 毫秒
  • titleSelector:标题选择器,默认为 'meta[property="og:title"]'
  • descriptionSelector:描述选择器,默认为 'meta[property="og:description"], meta[name="description"]'
  • imageSelector:图像选择器,默认为 'meta[property="og:image"]'

接口返回值

调用 fetchUrlMeta 函数后,会得到一个包含元数据的对象。下面是其中一些常用的元数据属性:

  • title:网页标题
  • description:网页描述
  • image:网页图像
  • url:原始 URL

示例代码

以下是一个使用 @jsenv/url-meta 的示例代码:

-- -------------------- ---- -------
--------- -----
------
------
  ---------- -------------
  ------- --------------
    ------ - ------------ - ---- -----------------

    ----- -------- --------------- -
      ----- ------------ - ------------------------------------
      ----- --- - ------------------
      ----- ---- - ----- -----------------

      ----- ------------ - ----------------------------------------
      ------------------------ - ----------

      ----- ------------------ - ----------------------------------------------
      ------------------------------ - ----------------

      ----- ------------ - ----------------------------------------
      ---------------- - ----------
      ---------------- - ----------
    -

    ------------------------------- ---------- -
      ----- ------------ - ------------------------------------
      -------------------------------------- --------------
      --------------------
    --
  ---------
-------
------
  ------ ------------------------------
  ------ ---------- ---------------

  ---- -------------
    ---- ------------------ ------ -------
    --- ------------------------
    -- -----------------------------
  ------
-------
-------

总结

@jsenv/url-meta 是一个方便的 JavaScript 库,用于获取 URL 元数据,可以大大简化开发人员的工作。通过深入学习和使用此库,可以更加高效地构建 URL 分享预览功能。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f29ed243b0ab45f74a8babc

纠错
反馈