lyswhut/lx-music-desktop · error

导入失败,脚本内容与已有的源「${api.name}」相同

Error message

导入失败,脚本内容与已有的源「${api.name}」相同

What it means

Error "导入失败,脚本内容与已有的源「${api.name}」相同" thrown in lyswhut/lx-music-desktop.

Source

Thrown at src/main/modules/userApi/utils.ts:117

const inflateScript = async(script: string) => new Promise<string>((resolve, reject) => {
  if (script.startsWith('gz_')) {
    zlib.inflate(Buffer.from(script.substring(3), 'base64'), (err, buf) => {
      if (err) {
        reject(err)
        return
      }
      resolve(buf.toString('utf8'))
    })
  } else resolve(script)
})
export const importApi = async(scriptRaw: string): Promise<LX.UserApi.UserApiInfo> => {
  let scriptInfo = parseScriptInfo(scriptRaw)
  const script = await deflateScript(scriptRaw)
  userApis ??= []
  for (const api of userApis) {
    const existingScript = scripts.get(api.id)
    if (existingScript === script) {
      throw new Error(`导入失败,脚本内容与已有的源「${api.name}」相同`)
    }
  }
  const apiInfo = {
    id: `user_api_${Math.random().toString().substring(2, 5)}_${Date.now()}`,
    ...scriptInfo,
    allowShowUpdateAlert: true,
  }
  userApis.push(apiInfo)
  scripts.set(apiInfo.id, script)
  saveData()
  return apiInfo
}

export const removeApi = (ids: string[]) => {
  if (!userApis) return
  for (let index = userApis.length - 1; index > -1; index--) {
    if (ids.includes(userApis[index].id)) {
      scripts.delete(userApis[index].id)

View on GitHub (pinned to 9c364b482e)

When it happens

Trigger: Thrown at src/main/modules/userApi/utils.ts:117 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of lyswhut/lx-music-desktop@9c364b482e (2026-08-12). Data as JSON: /api/errors/1dfa75d9fe49cd4a. Report an issue: GitHub.