如何使用axios正确发起Apple Search Ads定向关键词查询POST请求
问题原因
- axios.post方法的参数传递顺序错误,混淆了请求体参数和配置项参数的位置:
- axios.post的官方入参规则为
axios.post(请求URL, 请求体数据, 配置项(含headers等)) - 你当前的写法将headers配置和请求体data都放在了第二个参数的位置,导致请求头没有被正确挂载到请求上,实际发出去的请求体也不符合接口要求。
- axios.post的官方入参规则为
修正方案
调整参数顺序,将请求体data作为第二个参数,headers相关配置放到第三个参数的配置对象中即可,修正后的代码如下:
await axios.post( 'https://api.searchads.apple.com/api/v4/campaigns/XXXX/adgroups/targetingkeywords/find', data, // 第二个参数直接放请求体 { headers: { "Authorization": "Bearer " + accessToken, "X-AP-Context": "orgId=XXXX" } } )
如果调整后还是调用失败,可额外排查两个常见问题:
- 确认你的
data参数结构符合接口要求的查询条件格式,该接口需要传入筛选、分页相关的参数,不能直接传空对象 - 确认你的Bearer令牌生成规则正确,包含了对应的接口调用权限,orgId参数和实际的账户组织ID完全匹配
内容的提问来源于stack exchange,提问作者luc
相关产品推荐
相关产品推荐

