jsonp跨域读取数据(利用api获取天气预报)

1.jsonp是json的一种“使用模式”,可以让网页从别的网站那获取资料,即跨域读取数据。
2.ajax请求,原则上不允许跨域访问资源(特殊情况下可以跨域)
3.HTML本身没有跨域问题
4.script标签的src属性,允许指向跨域的资源
5.jsonp的核心则是动态添加script标签来调用服务器提供的js脚本
6.js中的script标签中的代码可以跨代码块来执行,script中的src可以指向任何地址
7.回环地址:127.0.0.1
8.所有支持JavaScript的浏览器都会使用同源策略这个安全策略,同源策略指域名,协议,端口相同。
9.jsonp是json with padding的略称,它允许在服务器端集成Script tags返回至客户端,通过JavaScript callback的形式实现跨域访问
(这仅仅是jsonp的简单实现形式)
10.jsonp只支持get请求,ajax支持get请求和post请求

 $.ajax({
   
            type:"GET",
            dataType:"jsonp",
            url:"https://tianqiapi.com/api?version=v1&appid=41741935&appsecret=1WCZkBa7",
            success:function(msg){
   
            console.dir(msg)
            }

获取天气预报效果:

在这里插入图片描述

实现步骤:

		1.给“搜索”按钮绑定点击事件,点击后
		2.利用jsonp跨域访问数据获取天气预报api中的数据
		3.对获取的数据中的数组对象进行遍历并动态添加到标签中
		4.每次点击都要给显示的内容标签置空(用jQuery中的empty方法,防止叠加)
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="jquery1.7.2.js"></script>
    <style>
        *{
    
            margin:0px;
            padding:0px;
        }
        #big{
    
            position: relative;
           width:1500px;
           height: 1200px;
          margin-left:100px;
        }
        #search{
    
            position:absolute;
            width:365px;
     
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值