为什么我不能使用代理正确获取数据?

时间:2019-10-10 18:52:22

标签: javascript fetch

我想从我的天气应用程序的API中获取数据。 这是我的代码示例:

if(navigator.geolocation){
  navigator.geolocation.getCurrentPosition(position =>{
    long = position.coords.longitude;  
    lat = position.coords.latitude;
    const proxy = "https://cors-anywhere.herokuapp.com/";
    const api = 
    '${proxy}https://api.darksky.net/forecast/4f94f918cc790acff94560f7961cc71f/${lat},${long}';
    fetch(api)
    .then(response =>{
        return response.json();
    })
    .then(data =>{
      console.log(data)
      const {temperature, summary} = data.currently;
      temperatureDegree.textContent = temperature
    });
  });
}

它不会获取。我真的不知道怎么回事。来自Darksky的天气API。

1 个答案:

答案 0 :(得分:3)

您要使用template literals

您需要使用反引号代替'

此行必须为:

const api = `${proxy}https://api.darksky.net/forecast/4f94f918cc790acff94560f7961cc71f/${lat},${long}`;