首页 > 解决方案 > Typescript-“类型响应中不存在属性 ip”

问题描述

你好,请其他人有这个打字稿错误,在这个 fetch api 调用上,我正在获取 userIp.ip 的 ip “类型响应中不存在属性 ip”,这里是代码

`
      let userIp = await fetch('https://api.ipify.org?format=json');
      userIp = await userIp.json();
      data = await fetch(
        `https://geo.ipify.org/api/v1? 
      apiKey=API_KEY&ipAddress=${userIp.ip}`
`

标签: typescript

解决方案


我想这是因为你声明

let userIp = await fetch('https://api.ipify.org?format=json');

userIp是类型Response

然后与userIp = await userIp.json();,因为userIp.json()返回 a Promise<any>,它与

userIp: Response = await userIp.json();

它没有找到ip钥匙Response

使用另一个变量修复它

  let userIp = await fetch('https://api.ipify.org?format=json');
  let userIpJson = await userIp.json();
  //You can also put a constraint
  //let userIpJson : { ip: string } = await userIp.json();
  console.log(userIpJson.ip)

推荐阅读