React Native调用Flutterwave接口时amount参数异常问题求助
Flutterwave转账接口金额报错排查方案
- 核对请求体字段名:确保金额字段的键名是
amount(全小写),不要写成Amount或其他变体。Postman能正常请求说明字段名是正确的,对比代码里的字段拼写,避免大小写或拼写错误。 - 确保金额类型转换正确:
- 如果金额来自输入框,先对字符串做
trim()处理,避免隐藏空格导致parseInt失效:const inputAmount = '54000'; // 输入框获取的字符串 const amount = parseInt(inputAmount.trim(), 10); - 转换后检查类型,确保是
number而非字符串:console.log(typeof amount); // 输出应为number - 若担心
parseInt的问题,可改用Math.floor(Number(inputAmount.trim()))确保得到整数。
- 如果金额来自输入框,先对字符串做
- 检查请求序列化与Content-Type:
- 发送请求时必须设置
Content-Type: application/json,否则接口无法正确解析JSON请求体,会返回“amount is required”。 - 用
JSON.stringify序列化请求体前,确认amount是数字类型,序列化后的结果应是{"amount":54000},而非带引号的字符串值。
- 发送请求时必须设置
- 排查请求拦截/封装逻辑:如果项目里封装了请求工具(比如axios),检查是否有拦截器自动将数字转为字符串,或者修改了请求体结构,导致金额字段被篡改。
内容的提问来源于stack exchange,提问作者Pamela
相关产品推荐
相关产品推荐

