Bruno - 开源IDE,用于探索和测试API

这是一款仅限离线使用(无需登录)的 API 客户端桌面工具,可用来测试和请求 API。它不同于日益臃肿、同类型的 Postman 等工具,你可以直接在本地管理接口信息和数据,没有杂七杂八的账号管理、代理请求、云同步等功能,简单直接、开箱即用的 API 客户端,适用于 Windows、macOS 和 Linux 操作系统。

特征

  • Bruno 是一款全新且创新的 API 客户端,旨在颠覆 Postman 和其他类似工具。
  • Bruno 直接在你的电脑文件夹中存储 API 信息。使用纯文本标记语言 Bru 来保存有关 API 的信息。
  • 可以使用 Git 或任何版本控制系统来对你的 API 信息进行版本控制和协作。
  • Bruno 仅限离线使用。

跨多个平台运行

通过 Git 进行协作

安装

也可以通过包管理器如 Homebrew、Chocolatey、Scoop、Snap 和 Apt 安装 Bruno。

# 在 Mac 电脑上用 Homebrew 安装
brew install bruno

# 在 Windows 上用 Chocolatey 安装
choco install bruno

# 在 Windows 上用 Scoop 安装
scoop bucket add extras
scoop install bruno

# 在 Linux 上用 Snap 安装
snap install bruno

# 在 Linux 上用 Apt 安装
sudo mkdir -p /etc/apt/keyrings
sudo gpg --no-default-keyring --keyring /etc/apt/keyrings/bruno.gpg --keyserver keyserver.ubuntu.com --recv-keys 9FA6017ECABE0266

echo "deb [signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list

sudo apt update
sudo apt install bruno

Bru 文件示例

get

get {
  url: https://api.github.com/users/usebruno
}

带标头的 GET

get {
  url: https://api.textlocal.in/send?apiKey=secret&numbers=9988776655&message=hello
}

headers {
  content-type: application/json
  Authorization: Bearer topsecret
}

发布

post {
  url: https://api.textlocal.in/send
}

body {
  {
    "apiKey""secret",
    "numbers""9988776655",
    "message""Woof! lets play with some apis"
  }
}

headers {
  content-type: application/json
  Authorization: Bearer topsecret
}

脚本编写

post {
  url: https://api.textlocal.in/login
}

body {
  {
    "username""johnnash",
    "password""governingdynamics"
  }
}

script:post-response {
  bru.setVar("token", res.body.token);
}

测试

  url: https://api.textlocal.in/login
}

body {
{
"username": "johnnash",
"password": "governingdynamics"
}
}

tests {
test("should be able to login", function() {
expect(res.status).to.equal(201);
});

test("should receive the token", function() {
expect(res.body.token).to.be.a('string');
});
}

传送门

开源地址:https://github.com/usebruno/bruno

-END-

相关推荐

  • 阿里限流神器Sentinel夺命连环 16 问?
  • 生存分析是什么?手动和使用R的示例
  • 全球最强大模型一夜易主,GPT-4时代终结!Claude 3一夜颠覆AI界!
  • 大模型如何用于游戏?游戏玩家代理与大模型综述:方法、应用与挑战
  • 如何从头开始编写LoRA代码,这有一份教程
  • 突发!Stable Diffusion核心团队被曝集体离职
  • 为什么ChatGPT等AI大模型都是基于Python开发?
  • 游戏账号的订单流程重构之路
  • 传Stability AI核心技术团队集体离职;Sora复现项目Mora发布;三星明年推出AI芯片Mach-1丨AIGC大事日报
  • 现场采访黄仁勋:20个灵魂问题,谈GPU定价和中国出口,怼AGI时间表
  • 张勇 × 刘晓丹,顶峰相见| 底片
  • 12条SQL不起眼的数仓调优技巧
  • 洗一次68元,单月成交总额能做到6500万,搞钱就是要做复利的事情
  • 用大语言模型控制交通信号灯,有效缓解拥堵!
  • 今日arXiv最热NLP大模型论文:华东师大发布对话级大模型幻觉评价基准DiaHalu
  • 超越 GPT-4V 和 Gemini Pro!HyperGAI 发布最新多模态大模型 HPT,已开源
  • 【收藏】GTC2024必看演讲|对话视频系列 · 之一
  • Beyond Compare! Rust Vs Js
  • 招募200名互联网运营师,不限经验,男女可报!居家办公!
  • [开源]MIT开源协议,智慧协同办公OA,企业级协同办公整体解决方案