使用jQuery或纯JS进行JSONP请求处理?

时间:2018-07-17 16:20:51

标签: javascript jquery ajax api

我正在使用具有HTML,CSS和JS的AllWeatherMap api构建天气应用程序。提供的天气详细信息采用JSONP格式。我读到jquery在后台处理这样的请求。但是我的webapp不需要任何jquery库。因此,应该使用jquery进行请求处理还是使用纯JS解决跨源问题。 这是我的电话:

http://api.openweathermap.org/data/2.5/weather?zip=201310,IN&appid=[MY_ID]

响应:

{
  "coord": {
    "lon": 77.57,
    "lat": 28.45
  },
  "weather": [
    {
      "id": 721,
      "main": "Haze",
      "description": "haze",
      "icon": "50n"
    }
  ],
  "base": "stations",
  "main": {
    "temp": 306.15,
    "pressure": 999,
    "humidity": 66,
    "temp_min": 306.15,
    "temp_max": 306.15
  },
  "visibility": 4000,
  "wind": {
    "speed": 1.5,
    "deg": 110
  },
  "clouds": {
    "all": 40
  },
  "dt": 1531841400,
  "sys": {
    "type": 1,
    "id": 7809,
    "message": 0.0037,
    "country": "IN",
    "sunrise": 1531785804,
    "sunset": 1531835291
  },
  "id": 200124150,
  "name": "Greater Noida",
  "cod": 200
}

我们为什么不为这样的跨域问题而烦恼一些api:

https://learnwebcode.github.io/json-example/animals-1.json

以上url的json可以正常访问。

1 个答案:

答案 0 :(得分:0)

我建议尝试使用获取api https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch代替jquery,尤其是如果项目中其他任何地方未使用jquery的话(因为没有必要)。借助fetch api,您可以轻松处理json响应以及CORS问题等等。