健康指标计算 API
根据性别、年龄、身高、体重估算基础代谢(BMR)、每日总消耗(TDEE)、理想体重、体脂率与心率区间(仅供参考)
数据来源:本地计算(Mifflin-St Jeor、Deurenberg、美国海军围度法、Devine、Tanaka 公式)
返回统一的 JSON 格式 { code, message, cached, stale, updatedAt, data },支持跨域,免注册每天可免费调用 100 次,注册后每天 10000 次。
基础代谢、每日热量、理想体重、体脂率估算
GET /api/health/calc
请求参数
gender(必填):性别:male / female(也可用 男 / 女),示例maleage(必填):年龄(周岁,18~100,公式适用于成人),示例30height(必填):身高(厘米,100~250),示例175weight(必填):体重(公斤,30~300),示例70activity:活动水平:sedentary 久坐 1.2、light 轻度 1.375、moderate 中度 1.55、active 高度 1.725、very 极高 1.9,示例moderatewaist:腰围(厘米,肚脐水平),与 neck 一起传入时用海军围度法估算体脂,示例82neck:颈围(厘米,喉结下方),示例38hip:臀围(厘米,最宽处),女性用海军法时必填,示例95
返回字段
gender(string):性别:male 或 femaleage(number):年龄(周岁)height(number):身高(厘米)weight(number):体重(公斤)activity(object):活动水平activity.level(string):活动水平代号:sedentary、light、moderate、active、veryactivity.factor(number):TDEE 活动系数activity.name(string):活动水平中文说明bmi(object):BMI 摘要(详细分级与建议请用 /api/bmi)bmi.value(number):BMI,保留 1 位小数bmi.level(string):中国成人标准分级:偏瘦、正常、超重、肥胖bmi.see(string):详细 BMI 接口路径(/api/bmi)bmr(number):基础代谢率(千卡/天,Mifflin-St Jeor 公式):静卧不动一天消耗的热量tdee(number):每日总能量消耗(千卡/天)= BMR × 活动系数calories(object):每日摄入热量参考(千卡/天)calories.maintain(number):维持体重 ≈ TDEEcalories.mildLoss(number):温和减重(约每周 0.25 公斤)= TDEE − 250calories.loss(number):减重(约每周 0.5 公斤)= TDEE − 500calories.gain(number):增重/增肌 = TDEE + 300calories.minimum(number):无医生指导时不建议低于的每日摄入(男 1500、女 1200)idealWeight(object):理想体重(公斤,不同公式结果不同,仅作参考区间)idealWeight.devine(number):Devine 公式:男 50 + 2.3 ×(身高英寸 − 60),女 45.5 + 2.3 ×(身高英寸 − 60);身高低于 152cm 时偏低idealWeight.broca(number):国内常用标准体重:男(身高 − 100)× 0.9,女再减 2.5idealWeight.bmiMin(number):按中国标准 BMI 18.5 换算的健康体重下限idealWeight.bmiMax(number):按中国标准 BMI 23.9 换算的健康体重上限bodyFat(object):体脂率估算(百分数,误差可达 ±4% 以上)bodyFat.bmiMethod(number):Deurenberg BMI 法:1.2 × BMI + 0.23 × 年龄 − 10.8 × 性别(男 1 女 0)− 5.4;肌肉量大的人会高估bodyFat.bmiMethodLevel(string):bmiMethod 的分级(ACE 标准):必需脂肪、运动员、健康、一般、偏高bodyFat.navy(number|null):美国海军围度法体脂率;未传 waist、neck(女性还需 hip)或围度不合理时为 nullbodyFat.navyLevel(string|null):navy 的分级(ACE 标准);navy 为 null 时为 null