读取本地文件
Api-Switcher插件/2.3.0/Verify-Package.mjs:9
const bytes = gunzipSync(readFileSync(archive))读取本地文件
Api-Switcher插件/2.3.0/Verify-Package.mjs:38
assert.equal(hash(readFileSync(target)), hash(expected), `Installed file mismatch: ${name}`)读取本地文件
Api-Switcher插件/2.3.0/lib/capabilities.js:2
export const apiyiCatalog = JSON.parse(readFileSync(new URL('./assets/apiyi-catalog.json', import.meta.url), 'utf8'))读取本地文件
Api-Switcher插件/2.3.0/lib/capabilities.js:3
export const mimoCatalog = JSON.parse(readFileSync(new URL('./assets/mimo-catalog.json', import.meta.url), 'utf8'))读取本地文件
Api-Switcher插件/2.3.0/lib/http.js:43
res.statusCode = 200; res.setHeader('content-type', 'text/css; charset=utf-8'); res.setHeader('cache-control', 'no-cache'); res.setHeader('x-content-t读取本地文件
Api-Switcher插件/2.3.0/lib/http.js:46
const image = leaf === 'brand' ? {bytes:readFileSync(new URL('./assets/logo.png', import.meta.url)),type:'image/png'} : await controller.logo({provide读取本地文件
Api-Switcher插件/2.3.0/lib/logos.js:85
const record = JSON.parse(readFileSync(join(folder, `${identity(website)}.json`), 'utf8'))读取本地文件
Api-Switcher插件/2.3.0/lib/logos.js:86
if (!existsSync(join(folder, `${record.hash}.img`))) return undefined写入本地文件
Api-Switcher插件/2.3.0/lib/logos.js:107
mkdirSync(folder, {recursive:true})写入本地文件
Api-Switcher插件/2.3.0/lib/logos.js:109
writeFileSync(join(folder, `${hash}.img`), bytes)写入本地文件
Api-Switcher插件/2.3.0/lib/logos.js:111
try { writeFileSync(temp, JSON.stringify(record)); renameSync(temp, join(folder, `${identity(website)}.json`)) } finally {try{unlinkSync(temp)}catch{}写入本地文件
Api-Switcher插件/2.3.0/lib/logos.js:111
try { writeFileSync(temp, JSON.stringify(record)); renameSync(temp, join(folder, `${identity(website)}.json`)) } finally {try{unlinkSync(temp)}catch{}删除本地文件
Api-Switcher插件/2.3.0/lib/logos.js:111
try { writeFileSync(temp, JSON.stringify(record)); renameSync(temp, join(folder, `${identity(website)}.json`)) } finally {try{unlinkSync(temp)}catch{}读取本地文件
Api-Switcher插件/2.3.0/lib/logos.js:119
return {bytes:readFileSync(join(folder, `${record.hash}.img`)),type:record.type,hash:record.hash}读取本地文件
Api-Switcher插件/2.3.0/lib/store.js:7
const value = JSON.parse(readFileSync(path, 'utf8').replace(/^ FEFF/, ''))写入本地文件
Api-Switcher插件/2.3.0/lib/store.js:18
mkdirSync(dirname(path), { recursive: true })写入本地文件
Api-Switcher插件/2.3.0/lib/store.js:21
writeFileSync(temp, JSON.stringify(value, null, 2) + '\n', { flag: 'wx', mode: 0o600 })写入本地文件
Api-Switcher插件/2.3.0/lib/store.js:22
renameSync(temp, path)删除本地文件
Api-Switcher插件/2.3.0/lib/store.js:23
} finally { try { unlinkSync(temp) } catch {} }发起网络请求
DSH控制桥插件/1.0.0/lib/client.js:22
async function post(leaf,data){const r=await fetch(root+leaf,{method:'POST',headers:{'content-type':'application/json','x-dsh-control-client':'1'},bod写入本地文件
DSH控制桥插件/1.0.0/lib/control.js:6
export function atomic(file,value) { mkdirSync(dirname(file),{recursive:true});const tmp=file+'.'+randomUUID()+'.tmp';writeFileSync(tmp,JSON.stringify写入本地文件
DSH控制桥插件/1.0.0/lib/control.js:6
export function atomic(file,value) { mkdirSync(dirname(file),{recursive:true});const tmp=file+'.'+randomUUID()+'.tmp';writeFileSync(tmp,JSON.stringify写入本地文件
DSH控制桥插件/1.0.0/lib/control.js:6
export function atomic(file,value) { mkdirSync(dirname(file),{recursive:true});const tmp=file+'.'+randomUUID()+'.tmp';writeFileSync(tmp,JSON.stringify读取本地文件
DSH控制桥插件/1.0.0/lib/control.js:11
const receipts=existsSync(stateFile)?JSON.parse(readFileSync(stateFile,'utf8')):{};读取本地文件
DSH控制桥插件/1.0.0/lib/control.js:11
const receipts=existsSync(stateFile)?JSON.parse(readFileSync(stateFile,'utf8')):{};读取本地文件
DSH控制桥插件/1.0.0/lib/index.js:13
export function route(control,token){let lastClientRequest;return {kind:'prefix',path:ROOT,handler:async(req,res)=>{const send=(status,data)=>{res.sta读取本地文件
Token用量插件/1.0.0/lib/index.js:6192
res.end(readFileSync(new URL("./assets/logo.png", import.meta.url)));读取本地文件
Token用量插件/1.0.0/src/routes.ts:155
res.end(readFileSync(new URL('./assets/logo.png', import.meta.url)))读取本地文件
仓库插件管理器/1.3.0/lib/cache.js:27
try{const b=readFileSync(path);if(b.length>MAX_BYTES)throw new Error('仓库缓存过大');const v=JSON.parse(b.toString('utf8'));写入本地文件
仓库插件管理器/1.3.0/lib/cache.js:36
try{writeFileSync(temp,data,{encoding:'utf8',mode:0o600});renameSync(temp,path);}finally{try{unlinkSync(temp);}catch{}}写入本地文件
仓库插件管理器/1.3.0/lib/cache.js:36
try{writeFileSync(temp,data,{encoding:'utf8',mode:0o600});renameSync(temp,path);}finally{try{unlinkSync(temp);}catch{}}删除本地文件
仓库插件管理器/1.3.0/lib/cache.js:36
try{writeFileSync(temp,data,{encoding:'utf8',mode:0o600});renameSync(temp,path);}finally{try{unlinkSync(temp);}catch{}}发起网络请求
仓库插件管理器/1.3.0/lib/catalog.js:11
const r=await fetch(url,{headers:{'User-Agent':'DSH-Repo-Manager','Accept':'application/vnd.github+json'},signal:AbortSignal.timeout(60000)});发起网络请求
仓库插件管理器/1.3.0/lib/client.js:128
const r=await fetch(ROOT+'state'+(refresh?'?refresh=1':''),{headers:{'x-dsh-repo-manager':'1'},...(ac?{signal:ac.signal}:{})});发起网络请求
仓库插件管理器/1.3.0/lib/client.js:163
const r=await fetch(ROOT+'action',{method:'POST',headers:{'x-dsh-repo-manager':'1','content-type':'application/json'},body:JSON.stringify(confirm.payl发起网络请求
仓库插件管理器/1.3.0/lib/client.js:174
try{const r=await fetch(ROOT+'preferences',{method:'POST',headers:{'x-dsh-repo-manager':'1','content-type':'application/json'},body:JSON.stringify({re写入本地文件
仓库插件管理器/1.3.0/lib/index.js:20
mkdirSync(directory,{recursive:true});读取本地文件
仓库插件管理器/1.3.0/lib/index.js:22
if(existsSync(preferencesFile)){try{const preferences=JSON.parse(readFileSync(preferencesFile,'utf8'));receiveTests=preferences.schema===1&&preference读取本地文件
仓库插件管理器/1.3.0/lib/index.js:22
if(existsSync(preferencesFile)){try{const preferences=JSON.parse(readFileSync(preferencesFile,'utf8'));receiveTests=preferences.schema===1&&preference读取本地文件
仓库插件管理器/1.3.0/lib/index.js:27
if(existsSync(jobsFile)){try{for(const j of JSON.parse(readFileSync(jobsFile,'utf8'))){if(!['done','failed'].includes(j.status)){j.status='uncertain';读取本地文件
仓库插件管理器/1.3.0/lib/index.js:27
if(existsSync(jobsFile)){try{for(const j of JSON.parse(readFileSync(jobsFile,'utf8'))){if(!['done','failed'].includes(j.status)){j.status='uncertain';写入本地文件
仓库插件管理器/1.3.0/lib/index.js:30
const save=()=>{if(disposed)return;const path=jobsFile+'.'+randomUUID()+'.tmp';writeFileSync(path,JSON.stringify([...jobs.values()].slice(-40),null,2)写入本地文件
仓库插件管理器/1.3.0/lib/index.js:30
const save=()=>{if(disposed)return;const path=jobsFile+'.'+randomUUID()+'.tmp';writeFileSync(path,JSON.stringify([...jobs.values()].slice(-40),null,2)写入本地文件
仓库插件管理器/1.3.0/lib/index.js:48
if(value!==receiveTests){const temporary=preferencesFile+'.'+randomUUID()+'.tmp';writeFileSync(temporary,JSON.stringify({schema:1,receiveTests:value})写入本地文件
仓库插件管理器/1.3.0/lib/index.js:48
if(value!==receiveTests){const temporary=preferencesFile+'.'+randomUUID()+'.tmp';writeFileSync(temporary,JSON.stringify({schema:1,receiveTests:value})写入本地文件
仓库插件管理器/1.3.0/lib/index.js:82
const path=join(directory,`${item.name}-${item.version}-${item.sha256.slice(0,16)}.tgz`);writeFileSync(path+'.tmp',data);renameSync(path+'.tmp',path);读取本地文件
仓库插件管理器/1.3.0/lib/index.js:123
if(req.method==='GET'&&['/logo','/icon'].includes(leaf)){res.setHeader('content-type','image/png');res.end(readFileSync(new URL('./assets/'+(leaf==='/读取本地文件
仓库插件管理器/1.3.0/lib/operations.js:12
if(path&&!existsSync(path))throw new Error('已安装插件 '+bundle.name+' 的本地安装源不存在:'+path+'。请先恢复该安装包或重新安装此插件,再更新;未执行安装。');读取本地文件
仓库插件管理器/1.3.0/lib/operations.js:18
try{return sha256(readFileSync(path))===target.sha256;}catch{return false;}发起网络请求
仓库插件管理器/1.3.0/src/client.js:128
const r=await fetch(ROOT+'state'+(refresh?'?refresh=1':''),{headers:{'x-dsh-repo-manager':'1'},...(ac?{signal:ac.signal}:{})});发起网络请求
仓库插件管理器/1.3.0/src/client.js:163
const r=await fetch(ROOT+'action',{method:'POST',headers:{'x-dsh-repo-manager':'1','content-type':'application/json'},body:JSON.stringify(confirm.payl发起网络请求
仓库插件管理器/1.3.0/src/client.js:174
try{const r=await fetch(ROOT+'preferences',{method:'POST',headers:{'x-dsh-repo-manager':'1','content-type':'application/json'},body:JSON.stringify({re发起网络请求
故事中控台/0.8.0/lib/client.js:4
async function api(leaf,body){const r=await fetch(ROOT+leaf,{method:body?'POST':'GET',headers:{'x-storydeck':'1',...(body?{'content-type':'application写入本地文件
故事中控台/0.8.0/lib/core.js:134
constructor(file,{resolveWorkspace=()=>null}={}) { this.file=file;this.resolveWorkspace=resolveWorkspace; mkdirSync(dirname(file),{recursive:true}); t读取本地文件
故事中控台/0.8.0/lib/core.js:171
if(!existsSync(this.file)) return empty();读取本地文件
故事中控台/0.8.0/lib/core.js:172
const raw=readFileSync(this.file,'utf8');check(Buffer.byteLength(raw)<=32*1024*1024,'数据文件过大');读取本地文件
故事中控台/0.8.0/lib/core.js:191
if(existsSync(this.file)&&JSON.parse(readFileSync(this.file,'utf8')).schema===1&&!existsSync(this.file+'.schema1-backup'))writeFileSync(this.file+'.sc写入本地文件
故事中控台/0.8.0/lib/core.js:191
if(existsSync(this.file)&&JSON.parse(readFileSync(this.file,'utf8')).schema===1&&!existsSync(this.file+'.schema1-backup'))writeFileSync(this.file+'.sc读取本地文件
故事中控台/0.8.0/lib/core.js:191
if(existsSync(this.file)&&JSON.parse(readFileSync(this.file,'utf8')).schema===1&&!existsSync(this.file+'.schema1-backup'))writeFileSync(this.file+'.sc读取本地文件
故事中控台/0.8.0/lib/core.js:192
if(existsSync(this.file)&&JSON.parse(readFileSync(this.file,'utf8')).schema===2&&!existsSync(this.file+'.schema2-backup'))writeFileSync(this.file+'.sc写入本地文件
故事中控台/0.8.0/lib/core.js:192
if(existsSync(this.file)&&JSON.parse(readFileSync(this.file,'utf8')).schema===2&&!existsSync(this.file+'.schema2-backup'))writeFileSync(this.file+'.sc读取本地文件
故事中控台/0.8.0/lib/core.js:192
if(existsSync(this.file)&&JSON.parse(readFileSync(this.file,'utf8')).schema===2&&!existsSync(this.file+'.schema2-backup'))writeFileSync(this.file+'.sc写入本地文件
故事中控台/0.8.0/lib/core.js:193
if(existsSync(this.file)&&JSON.parse(readFileSync(this.file,'utf8')).schema===3&&!existsSync(this.file+'.schema3-backup'))writeFileSync(this.file+'.sc写入本地文件
故事中控台/0.8.0/lib/core.js:195
try { writeFileSync(tmp,bytes,{flag:'wx'});renameSync(tmp,this.file); }写入本地文件
故事中控台/0.8.0/lib/core.js:195
try { writeFileSync(tmp,bytes,{flag:'wx'});renameSync(tmp,this.file); }删除本地文件
故事中控台/0.8.0/lib/core.js:196
finally { if(existsSync(tmp)) unlinkSync(tmp); }删除本地文件
故事中控台/0.8.0/lib/core.js:198
} finally { closeSync(handle);unlinkSync(lock); }读取本地文件
故事中控台/0.8.0/lib/worldbook.js:53
res.end(readFileSync(new URL('./assets/star-map.html',import.meta.url)));return;读取本地文件
故事中控台/0.8.0/lib/worldbook.js:56
res.setHeader('content-type','image/png');res.end(readFileSync(new URL('./assets/'+(leaf==='/logo'?'logo':leaf==='/mascot'?'mascot':'icon')+'.png',imp发起网络请求
故事中控台/0.8.0/src/client.js:4
async function api(leaf,body){const r=await fetch(ROOT+leaf,{method:body?'POST':'GET',headers:{'x-storydeck':'1',...(body?{'content-type':'application发起网络请求
故事中控台/0.8.0/src/star-map-runtime.js:15
async function api(leaf,body){const controller=new AbortController(),timer=setTimeout(()=>controller.abort(),20000);try{const r=await fetch('/storydec发起网络请求
最高指令插件/1.1.2/lib/client.js:9
const response = await fetch(root + leaf, {读取本地文件
最高指令插件/1.1.2/lib/index.js:29
res.end(readFileSync(new URL('./assets/logo.png', import.meta.url)))读取本地文件
最高指令插件/1.1.2/lib/state.js:14
return JSON.parse(readFileSync(file, 'utf8').replace(/^ FEFF/, ''))写入本地文件
最高指令插件/1.1.2/lib/state.js:22
mkdirSync(dirname(file), { recursive: true })写入本地文件
最高指令插件/1.1.2/lib/state.js:27
writeFileSync(fd, `${JSON.stringify(value, null, 2)}\n`, 'utf8')写入本地文件
最高指令插件/1.1.2/lib/state.js:30
renameSync(tmp, file)删除本地文件
最高指令插件/1.1.2/lib/state.js:33
if (existsSync(tmp)) unlinkSync(tmp)读取本地文件
最高指令插件/1.1.2/lib/state.js:33
if (existsSync(tmp)) unlinkSync(tmp)读取本地文件
最高指令插件/1.1.2/lib/state.js:38
if (!existsSync(file)) return { state: defaultState(), recovered: false, warning: '' }