美文网首页
4.4 私有模块和存储库

4.4 私有模块和存储库

作者: 9e8aeff1c70c | 来源:发表于2021-05-17 06:35 被阅读0次

在某些情况下,您可能希望加载位于私有存储库(如GitHub上的私有存储库)中的远程模块。

DENO支持在请求远程模块时发送承载令牌。承载令牌是OAuth 2.0使用的主要访问令牌类型,并得到托管服务(例如GitHub、GitLab、BitBucket、Cloudsmith等)的广泛支持。

DENO_AUTH_TOKENS

Deno CLI将查找名为DENO_AUTH_TOKENS的环境变量,以确定在请求远程模块时应考虑使用哪些身份验证令牌。环境变量的值采用由分号(;)分隔的n个令牌的格式,其中每个令牌的格式为{Token}@{hostname[:port]}。

例如,单个令牌看起来是这样的:

DENO_AUTH_TOKENS=a1b2c3d4e5f6@deno.land

多个令牌看起来是这样的:

DENO_AUTH_TOKENS=a1b2c3d4e5f6@deno.land;f1e2d3c4b5a6@example.com:8080

当Deno去获取远程模块,其中主机名与远程模块的主机名匹配时,Deno会将请求的Authorization头设置为Beader{Token}的值。这允许远程服务器识别该请求是绑定到特定认证用户的授权请求,并提供对服务器上适当资源和模块的访问。
AuthorizationBearer {token}

GitHub

为了能够访问GitHub上的私有存储库,您需要为自己颁发个人访问令牌。您可以登录GitHub,然后进入设置->开发人员设置->个人访问令牌:

Personal access tokens settings on GitHub

然后,您可以选择生成新令牌,并为您的令牌提供描述和适当的访问权限:

Creating a new personal access token on GitHub

一旦创建,GitHub将一次性显示新令牌,您希望在环境变量中使用该令牌的值:

Display of newly created token on GitHub

为了访问GitHub上的私有存储库中包含的模块,您可能希望使用DENO_AUTH_TOKENS环境变量中生成的令牌,该环境变量的作用域为raw.githubusercontent.com主机名。例如:DENO_AUTH_TOKENS``raw.githubusercontent.com

DENO_AUTH_TOKENS=a1b2c3d4e5f6@raw.githubusercontent.com

这应该允许Deno访问令牌所针对的用户有权访问的任何模块。

当令牌不正确或用户无权访问模块时,GitHub将发出404未找到状态,而不是未授权状态。因此,如果在命令行中找不到您试图访问的模块,请检查环境变量设置和个人访问令牌设置。

此外,还应打印出有关从环境变量解析出的令牌数量的调试消息。如果它感觉到任何令牌格式不正确,它将打印一条错误消息。出于安全考虑,它不会打印有关令牌的任何详细信息。deno run-L debug

相关文章

  • 4.4 私有模块和存储库

    在某些情况下,您可能希望加载位于私有存储库(如GitHub上的私有存储库)中的远程模块。 DENO支持在请求远程模...

  • 制作CocoaPod依赖库

    随着模块化的盛行,使用cocoaPod制作私有库,将代码模块化解耦已是大项目代码管理的所需。制作私有库,代码模块化...

  • 检测私有库报错 [iOS] unknown: Encounte

    问题描述项目模块化时,我们制作的私有库免不了依赖其他私有库和CocoaPods的公有库。在产品更新迭代制作新版本的...

  • CocoaPods管理私有库

    将可以复用的功能模块或者业务模块提取出来制作成私有库,通过Git托管代码,CocoaPods来管理这些私有库。不论...

  • 制作 CocoaPods 开源库

    CocoaPods 开源库的制作过程: 添加私有Pod仓库,用来存储私有Pod库的podspec文件,类似Coco...

  • pod subspec 子模块

    pod私有库创建详细教程pod私有库搭建完成后,给私有库创建子模块如图的形式 一、修改文件夹结构 二、上传改动到远...

  • 4.4 模块3:random库

    四、程序的控制结构 4.4 模块3:random库 random库概述 random库时使用随机数的Python标...

  • iOS组件化开发之私有库创建(上)

    前言 组件化中把模块拆分之后把模块的代码存放在私有库中,私有库中存放的其实是模块也就是我们拆分出来的组件的代码索引...

  • CocoaPods 私有化

    一、创建所需要的代码仓库 创建 Spec 私有索引库(ZFSpec),用来存放本地spec 创建模块私有库(ZFP...

  • 创建私有库

    Part1私有索引库(存放.podSpec文件) 私有索引库分为本地私有索引库和远程私有索引库。 本地索引库 可以...

网友评论

      本文标题:4.4 私有模块和存储库

      本文链接:https://www.haomeiwen.com/subject/joeerltx.html