# mm 错误处理与异常规范

## 规则（Rules）

- API 返回统一格式：`$.ret.obj(data)` 成功，`$.ret.error(code, msg)` 失败
- 系统异常捕获在 `index.js` 的 `uncaughtException` 和 `unhandledRejection` 中

## 方法（Methods）

### 步骤1：API 返回成功

```javascript
return $.ret.obj({ success: true, data: result });
```

### 步骤2：API 返回错误

```javascript
return $.ret.error(1001, "参数错误");
```

### 步骤3：异常捕获

```javascript
try {
    // 业务逻辑
} catch (err) {
    $.log.error('操作失败', err);
    return $.ret.error(500, "服务器内部错误");
}
```

## 技巧（Tips）

- `$.log.info()` 记录普通日志
- `$.log.error()` 记录错误日志
- `$.log.warn()` 记录警告日志
- 未捕获的异常在 index.js 中被全局捕获，不会导致进程崩溃
