开源 企业版 高校版 私有云 模力方舟 AI 队友
代码拉取完成,页面将自动刷新
捐赠
捐赠前请先登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
1 Star 0 Fork 0

Hyperledger/aries-framework-javascript

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
已有帐号? 立即登录
文件
main
分支 (263)
标签 (1455)
main
feat/update-oipenid4vc
changeset-release/main
feat/didcomm-v2
dependabot/npm_and_yarn/patch-updates-cec26ff656
dependabot/github_actions/all-updates-6d1c06d137
feat/improved-wallet-initiated-issuance
feat/trusted-entities-verification
feat/oid4c-certification-testing
dependabot/docker/major-updates-cff36be043
dependabot/npm_and_yarn/form-data-4.0.6
dependabot/npm_and_yarn/babel/plugin-transform-modules-systemjs-7.29.4
dependabot/npm_and_yarn/joi-17.13.4
dependabot/npm_and_yarn/vite-8.0.16
dependabot/github_actions/all-updates-7c6aafb9ac
dependabot/npm_and_yarn/multer-2.2.0
dependabot/npm_and_yarn/types/supertest-7.2.0
chore/update-oid4vc-fix-errors
chore/bump/x509
chore/fix-kid-issue
v0.7.1-pr-2856-20260703142614
v0.7.1-pr-2856-20260702134607
v0.7.1-alpha-20260701112542
v0.7.1-alpha-20260701091816
v0.7.1-alpha-20260701091357
v0.7.1-pr-2704-20260630143332
v0.7.1-alpha-20260630125025
v0.7.1-alpha-20260630110851
v0.7.1-alpha-20260630084022
v0.7.1-alpha-20260630070340
v0.8.0-alpha-20260629140408
v0.8.0-pr-2844-20260629134640
v0.8.0-pr-2844-20260629133912
v0.8.0-alpha-20260629133120
v0.7.1-pr-2844-20260629120758
v0.7.1-pr-2844-20260629120541
v0.7.1-pr-2844-20260629112731
v0.7.1-pr-2844-20260629111713
v0.7.1-pr-2844-20260626134650
v0.7.1-pr-2844-20260626134519
main
分支 (263)
标签 (1455)
main
feat/update-oipenid4vc
changeset-release/main
feat/didcomm-v2
dependabot/npm_and_yarn/patch-updates-cec26ff656
dependabot/github_actions/all-updates-6d1c06d137
feat/improved-wallet-initiated-issuance
feat/trusted-entities-verification
feat/oid4c-certification-testing
dependabot/docker/major-updates-cff36be043
dependabot/npm_and_yarn/form-data-4.0.6
dependabot/npm_and_yarn/babel/plugin-transform-modules-systemjs-7.29.4
dependabot/npm_and_yarn/joi-17.13.4
dependabot/npm_and_yarn/vite-8.0.16
dependabot/github_actions/all-updates-7c6aafb9ac
dependabot/npm_and_yarn/multer-2.2.0
dependabot/npm_and_yarn/types/supertest-7.2.0
chore/update-oid4vc-fix-errors
chore/bump/x509
chore/fix-kid-issue
v0.7.1-pr-2856-20260703142614
v0.7.1-pr-2856-20260702134607
v0.7.1-alpha-20260701112542
v0.7.1-alpha-20260701091816
v0.7.1-alpha-20260701091357
v0.7.1-pr-2704-20260630143332
v0.7.1-alpha-20260630125025
v0.7.1-alpha-20260630110851
v0.7.1-alpha-20260630084022
v0.7.1-alpha-20260630070340
v0.8.0-alpha-20260629140408
v0.8.0-pr-2844-20260629134640
v0.8.0-pr-2844-20260629133912
v0.8.0-alpha-20260629133120
v0.7.1-pr-2844-20260629120758
v0.7.1-pr-2844-20260629120541
v0.7.1-pr-2844-20260629112731
v0.7.1-pr-2844-20260629111713
v0.7.1-pr-2844-20260626134650
v0.7.1-pr-2844-20260626134519
克隆/下载
克隆/下载
提示
下载代码请复制以下命令到终端执行
为确保你提交的代码身份被 Gitee 正确识别,请执行以下命令完成配置
初次使用 SSH 协议进行代码克隆、推送等操作时,需按下述提示完成 SSH 配置
1 生成 RSA 密钥
2 获取 RSA 公钥内容,并配置到 SSH公钥
在 Gitee 上使用 SVN,请访问 使用指南
使用 HTTPS 协议时,命令行会出现如下账号密码验证步骤。基于安全考虑,Gitee 建议 配置并使用私人令牌 替代登录密码进行克隆、推送等操作
Username for 'https://gitee.com': userName
Password for 'https://userName@gitee.com': # 私人令牌
main
分支 (263)
标签 (1455)
main
feat/update-oipenid4vc
changeset-release/main
feat/didcomm-v2
dependabot/npm_and_yarn/patch-updates-cec26ff656
dependabot/github_actions/all-updates-6d1c06d137
feat/improved-wallet-initiated-issuance
feat/trusted-entities-verification
feat/oid4c-certification-testing
dependabot/docker/major-updates-cff36be043
dependabot/npm_and_yarn/form-data-4.0.6
dependabot/npm_and_yarn/babel/plugin-transform-modules-systemjs-7.29.4
dependabot/npm_and_yarn/joi-17.13.4
dependabot/npm_and_yarn/vite-8.0.16
dependabot/github_actions/all-updates-7c6aafb9ac
dependabot/npm_and_yarn/multer-2.2.0
dependabot/npm_and_yarn/types/supertest-7.2.0
chore/update-oid4vc-fix-errors
chore/bump/x509
chore/fix-kid-issue
v0.7.1-pr-2856-20260703142614
v0.7.1-pr-2856-20260702134607
v0.7.1-alpha-20260701112542
v0.7.1-alpha-20260701091816
v0.7.1-alpha-20260701091357
v0.7.1-pr-2704-20260630143332
v0.7.1-alpha-20260630125025
v0.7.1-alpha-20260630110851
v0.7.1-alpha-20260630084022
v0.7.1-alpha-20260630070340
v0.8.0-alpha-20260629140408
v0.8.0-pr-2844-20260629134640
v0.8.0-pr-2844-20260629133912
v0.8.0-alpha-20260629133120
v0.7.1-pr-2844-20260629120758
v0.7.1-pr-2844-20260629120541
v0.7.1-pr-2844-20260629112731
v0.7.1-pr-2844-20260629111713
v0.7.1-pr-2844-20260626134650
v0.7.1-pr-2844-20260626134519
NodeFileSystem.ts 4.06 KB
一键复制 编辑 原始数据 按行查看 历史
Timo Glastra 提交于 2025年10月13日 20:20 +08:00 . chore: update a lot of dependencies (#2449)
import type { DownloadToFileOptions, FileSystem } from '@credo-ts/core'
import { CredoError, TypedArrayEncoder } from '@credo-ts/core'
import { createHash } from 'crypto'
import fs, { promises } from 'fs'
import http from 'http'
import https from 'https'
import { homedir, tmpdir } from 'os'
import { dirname } from 'path'
const { access, readFile, writeFile, mkdir, rm, unlink, copyFile } = promises
export class NodeFileSystem implements FileSystem {
public readonly dataPath
public readonly cachePath
public readonly tempPath
/**
* Create new NodeFileSystem class instance.
*
* @param baseDataPath The base path to use for reading and writing data files used within the framework.
* Files will be created under baseDataPath/.afj directory. If not specified, it will be set to homedir()
* @param baseCachePath The base path to use for reading and writing cache files used within the framework.
* Files will be created under baseCachePath/.afj directory. If not specified, it will be set to homedir()
* @param baseTempPath The base path to use for reading and writing temporary files within the framework.
* Files will be created under baseTempPath/.afj directory. If not specified, it will be set to tmpdir()
*/
public constructor(options?: { baseDataPath?: string; baseCachePath?: string; baseTempPath?: string }) {
this.dataPath = options?.baseDataPath ? `${options?.baseDataPath}/.afj` : `${homedir()}/.afj/data`
this.cachePath = options?.baseCachePath ? `${options?.baseCachePath}/.afj` : `${homedir()}/.afj/cache`
this.tempPath = `${options?.baseTempPath ?? tmpdir()}/.afj`
}
public async exists(path: string) {
try {
await access(path)
return true
} catch {
return false
}
}
public async createDirectory(path: string): Promise<void> {
await mkdir(dirname(path), { recursive: true })
}
public async copyFile(sourcePath: string, destinationPath: string): Promise<void> {
await copyFile(sourcePath, destinationPath)
}
public async write(path: string, data: string): Promise<void> {
// Make sure parent directories exist
await mkdir(dirname(path), { recursive: true })
return writeFile(path, data, { encoding: 'utf-8' })
}
public async read(path: string): Promise<string> {
return readFile(path, { encoding: 'utf-8' })
}
public async delete(path: string): Promise<void> {
await rm(path, { recursive: true, force: true })
}
public async downloadToFile(url: string, path: string, options: DownloadToFileOptions) {
const httpMethod = url.startsWith('https') ? https : http
// Make sure parent directories exist
await mkdir(dirname(path), { recursive: true })
const file = fs.createWriteStream(path)
const hash = options.verifyHash ? createHash('sha256') : undefined
return new Promise<void>((resolve, reject) => {
httpMethod
.get(url, (response) => {
// check if response is success
if (response.statusCode !== 200) {
reject(`Unable to download file from url: ${url}. Response status was ${response.statusCode}`)
}
hash && response.pipe(hash)
response.pipe(file)
file.on('finish', async () => {
file.close()
if (hash && options.verifyHash?.hash) {
hash.end()
const digest = hash.digest()
if (digest.compare(options.verifyHash.hash) !== 0) {
await fs.promises.unlink(path)
reject(
new CredoError(
`Hash of downloaded file does not match expected hash. Expected: ${
options.verifyHash.hash
}, Actual: ${TypedArrayEncoder.toUtf8String(digest)})}`
)
)
}
}
resolve()
})
})
.on('error', async (error) => {
// Handle errors
await unlink(path) // Delete the file async. (But we don't check the result)
reject(`Unable to download file from url: ${url}. ${error.message}`)
})
})
}
}
Loading...
举报
举报成功
我们将于2个工作日内通过站内信反馈结果给你!
请认真填写举报原因,尽可能描述详细。
请选择举报类型
取消
发送
误判申诉

此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。

如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。

取消
提交

简介

Aries Framework JavaScript (Built using TypeScript)
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
编辑仓库简介
简介内容
主页
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/hyperledger/aries-framework-javascript.git
git@gitee.com:hyperledger/aries-framework-javascript.git
hyperledger
aries-framework-javascript
aries-framework-javascript
main
点此查找更多帮助

搜索帮助

评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册

AltStyle によって変換されたページ (->オリジナル) /