列出沙箱用于查看当前账号下仍在运行或可连接的沙箱,适合做运维排查、资源清理和任务恢复。
查询沙箱列表
import { Sandbox } from "e2b";
const paginator = Sandbox.list({
apiKey: process.env.E2B_API_KEY,
apiUrl: process.env.E2B_API_URL,
domain: process.env.E2B_DOMAIN,
});
while (paginator.hasNext) {
const sandboxes = await paginator.nextItems();
for (const sandbox of sandboxes) {
console.log(sandbox.sandboxId, sandbox.state);
}
}Python 示例:
import os
from e2b import Sandbox
paginator = Sandbox.list(
api_key=os.environ["E2B_API_KEY"],
api_url=os.environ["E2B_API_URL"],
domain=os.environ["E2B_DOMAIN"],
)
while paginator.has_next:
for sandbox in paginator.next_items():
print(sandbox.sandbox_id, sandbox.state)不同 SDK 版本的分页对象形态可能不同。编写业务代码时,建议优先使用 SDK 提供的迭代方式,而不是假设返回值一定是数组。
查询当前沙箱信息
const info = await sandbox.getInfo();
console.log(info.sandboxId);
console.log(info.templateId);
console.log(info.metadata);Python 示例:
info = sandbox.get_info()
print(info.sandbox_id)
print(info.template_id)
print(info.metadata)使用建议
列表接口适合做管理面能力,不建议在高频业务请求中反复调用。业务侧应保存自己的任务 ID 与 sandboxId 映射,避免用全量列表反查业务状态。
该文章对您有帮助吗?