首页 >web前端 >js教程 >如何用DENO从第三方API获取数据

如何用DENO从第三方API获取数据

Lisa Kudrow
Lisa Kudrow原创
2025-02-10 15:46:15853浏览

How to Fetch Data from a Third-party API with Deno

>本文探讨了Deno,这是一种现代运行时环境,设计为Node.js的潜在继任者或竞争对手。 DENO优先考虑安全性,并提供内置的打字稿支持。我们将构建一个命令行工具,该工具与Star Wars API进行交互,以说明DeNo的功能并突出显示其与Node.js.

的关键差异。

我们将介绍DENO的安装,环境设置以及创建用于制作API请求的简单命令行应用程序。 随附的代码可在github上找到。

>

deno的关键特征:

>
    与Node.js的默认允许使用方法不同。 集成了
  • 内置的打字稿: typeScript支持,消除了对外部配置的需求。
  • ES模块: deno使用ES模块,前面是commonjs语句。
  • >
  • 内置的代码格式():require>在不依赖外部工具的情况下确保一致的代码样式。
  • 顶级等待:deno fmt通过顶级支持。
  • 依赖关系管理:第三方依赖关系是直接通过URL导入的,绕开了对软件包管理器的需求。 DENO软件包存储库是库的主要来源。> await
  • >安装deno: >详细说明可在官方DENO网站上找到。 对于macOS/linux,使用:

记住要更新您的>环境变量。 Windows用户可以利用巧克力:

>替代安装方法在

页面上列出。用以下方式验证安装:
<code class="language-bash">curl -fsSL https://deno.land/x/install/install.sh | sh</code>

强烈建议使用DENO VS CODE扩展名,用于VS代码用户。 其他编辑者可能需要特定的插件;请咨询DENO文档以获取指导。 对于VS代码,通过$PATH启用插件:

>
<code class="language-bash">choco install deno</code>

deno_install创建您的第一个DENO脚本:

<code class="language-bash">deno -V</code>
>

create.vscode/settings.json与以下内容:

>
<code class="language-json">{
  "deno.enable": true,
  "editor.formatOnSave": true,
  "editor.defaultFormatter": "denoland.vscode-deno"
}</code>

>使用: 运行

>用Deno获取数据:index.ts

>
<code class="language-typescript">console.log("Hello, world!");</code>
deno包括提取API,消除了对外部软件包的需求。 让我们向《星球大战》 API提出请求:

deno run index.ts

请记住使用

flag授予网络访问:以进行增强安全性,指定允许的域:

管理第三方依赖关系:

要处理命令行参数,我们将使用Yargs。 直接从其URL导入:

<code class="language-bash">curl -fsSL https://deno.land/x/install/install.sh | sh</code>
记住要固定版本编号以获得更好的依赖关系管理。

使用Yargs: 此片段演示了如何使用Yargs解析命令行参数:

<code class="language-bash">choco install deno</code>
>查询星球大战API并增强输出:

> 函数获取数据,并且辅助功能(

queryStarWarsAPI)提供格式化的输出。 类型logFilmslogPeoplelogPlanets的定义提高类型安全性。 Person函数处理“结果”的单数/复数形式。 Film Planet代码组织和分布:pluralise> 通过将与API相关的逻辑移至

并将其导入到

>的情况下,对代码进行了重构代码。 使用创建一个单个JavaScript文件,以便于分发。 对于独立的可执行文件(实验),请使用

>这种修订后的响应提供了对原始文章的更简洁,有组织的解释,在提高可读性和清晰度的同时,保持了核心信息。 该图像保持其原始格式和位置。

>

以上是如何用DENO从第三方API获取数据的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn