如何移除JSON响应外层configurations头仅返回内部配置字段?
解决方案
你当前接口解析后返回的完整响应对象本身存在顶层configurations属性,直接返回整个解析结果就会带上这层外层包裹,只需要在解析响应后提取该属性对应的内层对象返回即可。
重构后的请求代码如下:
fetchPreAuthnConfig: async (data) => { try { const response = await fetch(preAuthnEndpoint, { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify(data), }); const responseBody = await response.json(); // 提取内层配置对象,移除外层包裹 const configurations = responseBody.configurations; console.log(configurations); return configurations; } catch (error) { console.error('Error', error); return error; } },
可选容错优化
如果需要兼容接口返回异常的场景,避免configurations字段缺失导致后续逻辑拿到undefined报错,可以增加空值兜底:
const configurations = responseBody.configurations || {};
修改后返回的结果将直接包含appClientId、applicationId、applicationLabel等所有配置字段,和你预期的目标结构完全匹配。
内容的提问来源于stack exchange,提问作者Genesis
相关产品推荐
相关产品推荐

