# @audius/sdk 中文文档

规范地址：https://npmcn.com/package/%40audius/sdk/

版本：17\.0\.0
npm 元数据更新时间：2026-09-24T18:54:51.813Z
中文译文更新时间：2026-11-07T04:37:45.176Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40audius/sdk
原文对照：https://npmcn.com/package/%40audius/sdk/?lang=original
项目主页：https://github.com/AudiusProject/apps/tree/main/packages/sdk
源码仓库：https://github.com/AudiusProject/apps

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：42.5 MB，646 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=24\.0\.0
- 运行依赖：34 个
- peer 依赖：@solana/web3\.js ^1\.95\.8，expo-web-browser \>=14\.0\.0，@react-native-async-storage/async-storage \>=1\.0\.0
- 首次发布：2022-06-01T16:23:49.824Z
- 最新版本发布：2026-09-24T18:54:51.367Z
- 近 30 天下载量：6369（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：351（近 12 个月 14 个）

## 中文简介

奥地斯 SDK

## 安装

```sh
npm install @audius/sdk
```

也可以使用：`pnpm add @audius/sdk`、`yarn add @audius/sdk`、`bun add @audius/sdk`

## README

# 从Audius SDK开始

## 概览

Audius JavaScript (TypeScript) SDK允许您轻松地与Audius协议互动. 使用 SDK 以 :

-   搜索并显示用户、音轨和播放列表
-   QQ 流出并上传音轨
-   QQ 最爱, 重播, 和目录播放列表
-   QQ 允许您的用户 [登录他们的 Audius 账户](https://docs.audius.co/developers/log-in-with-audius) 并代表他们采取行动

还有更多!

## API 计划

Audius提供两个API计划:

| 计划 | 费率限制 | 每月请求 |
| --- | --- | --- |
| **免费** | 10项请求/第二次 | 500 000项请求/月 |
| **无限制** | 无限制 | 无限制 |

自由计划总是自由而不受限制. 更高的限制和支持,联系人 [api@audius.co (英语)](mailto:api@audius.co) 关于无限计划.

## 获取您的 API 密钥

1.  访问 [奥迪乌斯 API 计划页](https://api.audius.co/plans) 并单击“创建 API 密钥”生成您的证书.
    
2.  你会收到一个 **API 密钥** (单位:千美元) **守护者托肯**。 。 。 .
    

-   **API 密钥** ——用于所有上下文(前端和后端). 安全地包含在客户端代码中.
-   **守护者托肯** ——仅是后端. 授予您的应用程序代表授权用户行事的能力. **永远不要在浏览器或移动码中披露这一点.**

## 安装 SDK

-   [节点.js](https://npmcn.com/package/%40audius/sdk/#readme-nodejs)
-   [HTML + 联合来文](https://npmcn.com/package/%40audius/sdk/#readme-html--js)

### 节点.js

如果您的项目处于节点.js环境中,请在终端运行此操作:

```bash
npm install @audius/sdk
```

[@audius/sdk 关于国家预防机制](https://www.npmjs.com/package/@audius/sdk)

### HTML + 联合来文

否则,请在您的网页中加入 SDK 脚本标记 。 Audius SDK将分配到 `window.audiusSdk`。 。 。 .

```html
<script src="https://cdn.jsdelivr.net/npm/@audius/sdk@latest/dist/sdk.min.js"></script>
```

## 初始化 SDK

您如何初始化 SDK 取决于您是否运行在 **后端** (节点.js)或 **前端** (浏览器/移动)上下文.

### 节点.js(后端)实例

包含您的 API 密钥和无记名符号 。 无记名符使您的应用程序能够代表授权的用户执行动作.

```js
import { sdk } from '@audius/sdk'

const audiusSdk = sdk({
  apiKey: 'Your API Key goes here',
  bearerToken: 'Your Bearer Token goes here'
})
```

### HTML + JS (前端) 实例

在浏览器或移动上下文中,初始化为您 **只有 API 密钥** - 没有无记名标志。 用户认证通过 [OA 流量](https://npmcn.com/package/%40audius/sdk/#readme-log-in-with-audius-oauth) 说明如下.

```js
const audiusSdk = window.audiusSdk({
  apiKey: 'Your API Key goes here'
})
```

\* 警告

**永远不要在前端代码中包含你的无记名符号.** 无记名标志允许您的应用程序代表已经授权的用户行事. 在客户端代码(浏览器或移动)中曝光它是一个严重的安全风险——任何检查您代码的人都可以使用它来冒充您的应用程序.

对于前端应用程序,请使用 [OA 流量](https://npmcn.com/package/%40audius/sdk/#readme-log-in-with-audius-oauth) 换句话说.

\* :

## 使用 SDK 拨打您的第一个 API

一旦你得到了SDK的初始化实例, 它的平滑航行 让你的第一个API呼叫.

```js
// Fetch your first track!
const track = await audiusSdk.tracks.getTrack({ trackId: 'D7KyD' })
console.log(track, 'Track fetched!')

// Favorite a track
const userId = (
  await audiusSdk.users.getUserByHandle({
    handle: 'Your Audius handle goes here'
  })
).data?.id
await audiusSdk.tracks.favoriteTrack({
  trackId: 'D7KyD',
  userId
})
```

## 完整节点.js 示例

```js
import { sdk } from '@audius/sdk'

const audiusSdk = sdk({
  apiKey: 'Your API Key goes here',
  bearerToken: 'Your Bearer Token goes here'
})

const track = await audiusSdk.tracks.getTrack({ trackId: 'D7KyD' })
console.log(track, 'Track fetched!')

const userId = (
  await audiusSdk.users.getUserByHandle({
    handle: 'Your Audius handle goes here'
  })
).data?.id

await audiusSdk.tracks.favoriteTrack({
  trackId: 'D7KyD',
  userId
})
console.log('Track favorited!')
```

## HTML + JS 实例

```html
<!DOCTYPE html>
<html>
  <head>
    <script src="https://cdn.jsdelivr.net/npm/@audius/sdk@latest/dist/sdk.min.js"></script>
    <script>
      const fn = async () => {
        const audiusSdk = window.audiusSdk({
          apiKey: 'Your API Key goes here'
        })
        const track = await audiusSdk.tracks.getTrack({ trackId: 'D7KyD' })
        console.log(track, 'Track fetched!')
      }

      fn()
    </script>
  </head>
  <body>
    <h1>Example content</h1>
  </body>
</html>
```

## 与 Audius (OAuth) 登录

对于前端app,使用内置的OAuth 2.0 PKCE流量认证用户. 这使得您的用户可以登录他们的Audius账户,并授权您的应用程序代表他们行事——而不会在客户端代码中暴露您的应用程序的无记名标志.

```js
const audiusSdk = window.audiusSdk({
  apiKey: 'Your API Key goes here',
  redirectUri: 'https://your-app.com/oauth/callback'
})

// Redirect the user to Audius to log in
audiusSdk.oauth.login()

// On your callback page, handle the redirect:
await audiusSdk.oauth.handleRedirectCallback()
```

在用户登录入库后,SDK自动存储其访问令牌,并将其列入之后的API呼叫中. 见 [日志 与奥迪乌斯指南](https://docs.audius.co/developers/guides/log-in-with-audius) 为了整个流动.

## 接下来呢?

-   [与 Audius 登录](https://docs.audius.co/developers/guides/log-in-with-audius) 添加 OAuth 认证到您的前端app
    
-   [探索 API 文档](https://docs.audius.co/developers/sdk/tracks) 看看你还能用奥迪乌斯SDK做什么
    

## 直接 API 访问

也可以不用SDK直接访问Audius API. 以下例子使用无记名标志,意在 **仅使用后端/服务器侧** ——不要在浏览器或移动码中使用你的无记名符号.

**瑞斯・阿普:**

```bash
curl -X GET "https://api.audius.co/v1/tracks/trending" \
  -H "Authorization: Bearer <YOUR-API-BEARER-TOKEN>"
```

**(原始内容存档于2018-03-26). gRPC:**

```bash
grpcurl -H "authorization: Bearer <YOUR-API-BEARER-TOKEN>" \
  grpc.audius.co:443 list
```

详情请访问 [API 文档](https://docs.audius.co/api) 或 [Swagger 定义](https://api.audius.co/v1)。 。 。 .

## 常见问题

### @audius/sdk 是什么？

奥地斯 SDK

### 如何安装 @audius/sdk？

在项目目录运行 npm install @audius/sdk，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@solana/web3\.js（^1\.95\.8）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @audius/sdk 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @audius/sdk 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @audius/sdk 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=24\.0\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @audius/sdk 可以商用吗？

@audius/sdk 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @audius/sdk 的下载量有多少？

根据 npm 官方下载统计，@audius/sdk 在 2026/10/07 – 2026/11/05 这 30 天内被下载 6,369 次，日均约 212 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @audius/sdk 还在维护吗？

最新版本 17\.0\.0 发布于 2026/09/25（1 个月前）；至今共发布 351 个版本，其中过去 12 个月发布了 14 个；首次发布于 2022/06/02。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

