# 毒鸡汤生成接口:5 分钟从注册到调通第一条毒鸡汤
> 接口/接入点:毒鸡汤生成(apiCode 2784,接入点 1) · 是否免费:免费(有使用档次限制) · 请求方式:POST/GET · 返回格式:JSON · 适用人群:新注册用户、初级开发者 · 阅读时间:约 5 分钟
## 核心要点
- 三步跑通:注册拿 AppKey → 发起一次 POST 请求 → 从 `showapi_res_body.emposion` 取出金句。
- 接口**没有任何业务入参**,请求体为空也能返回,极低上手成本。
- 提供 Python / cURL / Node.js 三种可直接运行的代码,替换 `YOUR_APPKEY` 即可。
## Why:先跑通再说
最快建立信心的办法就是先拿到一句真实返回的毒鸡汤。这一篇只做一件事:让你在 5 分钟内看到接口真的返回了内容,后续文章再展开场景和工程化。
## What:前置条件
| 项目 | 说明 |
|------|------|
| 账号 | 易源 ShowAPI 账号([免费注册](https://www.showapi.com)) |
| AppKey | 在[控制台 AppKey 管理](https://www.showapi.com/console#/myApp)获取 |
| 接口地址 | `https://route.showapi.com/2784-1?appKey=YOUR_APPKEY` |
| 入参 | 无(仅 appKey 鉴权,可选 `content-type` 头) |
| 超时 | 官方 5 秒,代码里建议显式设置超时 |
## How:第一次调用
### 1) 准备 AppKey
登录后到[控制台 AppKey 管理](https://www.showapi.com/console#/myApp)复制你的 AppKey,下面代码中替换 `YOUR_APPKEY`。
### 2) cURL 直接试
```bash
curl -X POST "https://route.showapi.com/2784-1?appKey=YOUR_APPKEY" \
-H "content-type: application/x-www-form-urlencoded"
```
### 3) Python(requests)
```python
import requests
API_URL = "https://route.showapi.com/2784-1"
APP_KEY = "YOUR_APPKEY" # 替换为你的真实 AppKey
try:
resp = requests.post(
API_URL,
params={"appKey": APP_KEY},
headers={"content-type": "application/x-www-form-urlencoded"},
timeout=5, # 对齐官方超时
)
resp.raise_for_status()
data = resp.json()
body = data.get("showapi_res_body", {})
if body.get("ret_code") == 0:
print("毒鸡汤:", body.get("emposion"))
else:
print("生成失败:", body.get("remark"))
except requests.exceptions.Timeout:
print("请求超时(官方超时 5 秒)")
except requests.exceptions.RequestException as e:
print("请求异常:", e)
```
### 4) Node.js(fetch)
```javascript
const API_URL = "https://route.showapi.com/2784-1";
const APP_KEY = "YOUR_APPKEY"; // 替换为你的真实 AppKey
try {
const resp = await fetch(`${API_URL}?appKey=${APP_KEY}`, {
method: "POST",
headers: { "content-type": "application/x-www-form-urlencoded" },
signal: AbortSignal.timeout(5000), // 对齐官方 5 秒超时
});
const data = await resp.json();
const body = data.showapi_res_body || {};
if (body.ret_code === 0) {
console.log("毒鸡汤:", body.emposion);
} else {
console.log("生成失败:", body.remark);
}
} catch (e) {
console.error("请求异常:", e.message);
}
```
## 返回示例与解析
```json
{
"showapi_res_id": "",
"showapi_res_error": "",
"showapi_res_code": 0,
"showapi_res_body": {
"ret_code": 0,
"remark": "",
"emposion": "你以为只要长得漂亮就有男生喜欢?你以为只要有了钱漂亮妹子就自己贴上来了?你以为学霸就能找到好工作?我告诉你吧,这些都是真的!"
}
}
```
| 字段 | 含义 |
|------|------|
| `showapi_res_code` | ShowAPI 系统级状态码(0 一般表示系统层成功) |
| `showapi_res_body.ret_code` | 业务码:**0=生成成功,-1=失败** |
| `showapi_res_body.remark` | 失败时的错误信息 |
| `showapi_res_body.emposion` | **毒鸡汤正文**(注意字段名即此拼写) |
## 进阶/边界
- 返回是**随机**的一句,同参数多次调用结果不同。
- 免费但有使用档次限制,具体额度见[官方档位说明](https://www.showapi.com/free-api)。
- 字段名是 `emposion`(不是 emotion),前端/后端取数时务必原样引用。
## FAQ
**Q1:返回 ret_code=-1 怎么办?**
先检查 AppKey 是否正确、是否urlencode;若偶发,参考《毒鸡汤接口 5 秒超时下,如何做重试与容错?》做重试。持续失败看 `remark` 字段的错误信息。
**Q2:请求一定要带 content-type 吗?**
不是必须。详情页标注该 Header 为"否"(非必填),空请求体也能正常返回。
**Q3:能一次拿到多句吗?**
当前单接入点每次调用返回一句。要凑多条,需多次调用(注意免费档位频控,见《免费档位下,如何控制毒鸡汤调用频次与成本?》)。
## 相关能力 / 下一步阅读
- [毒鸡汤生成接口:返回字段全解](https://www.showapi.com/guides/poison-soup-response-2784) —— 字段含义与状态机
- [聊天机器人如何接入毒鸡汤?](https://www.showapi.com/guides/poison-soup-chatbot-2784) —— 第一个真实场景
- [毒鸡汤接口:通过 MCP 在 Cherry Studio / ChatBox 直接调用](https://www.showapi.com/guides/poison-soup-mcp-2784) —— 不想写代码也能用
- **本系列共 14 篇**:查看[毒鸡汤生成接口官方指南总目录](https://www.showapi.com/guides/poison-soup-guides-2784)