5.28ajax和jsonp的封装

# 一、ajax的封装
1. ajax的get封装
2. ajax的post封装
    - url不用拼接了
    - 修改请求方式为post
    - 提前设置请求头信息中内容的格式
    - 注意发送数据的格式和位置
3. ajax的get+post封装
    - 参数的处理
# 二、跨域
1. 浏览器提出了一种同源策略
    - 同服务
    - 同域名
    - 同端口
2. 当请求页面和请求地址之间没有遵守同源策略时,且请求资源没有明确表示允许,那么浏览器会阻止ajax请求
    - 不允许跨域请求数据
3. 解决跨域问题
    - 后台
    - 前端
        - jsonp
4. jsonp是利用script标签可以引入外部资源,并将引入的外部资源作为js代码解析的特性,获取跨域资源
    - 如果外部资源是php文件,那么php文件会自动被服务器解析,解析之后的返回的数据,会作为js执行
5. jsonp的封装
    - 动态创建script标签,设置src属性为跨域的地址,通过地址拼接数据,实现数据的发送
    - 通过在后台资源内,返回js格式的函数执行,利用函数的传参,实现跨域数据传输
    - 注意:各种参数的作用和处理
   
6. ajax和jsonp的总结
    - ajax,适合同源请求,或后台明确允许请求的资源
    - jsonp,适合请求跨域资源,但要求,后台使用字符串拼接的形式,执行js中的函数
    - ajax和jsonp不能互换,不能互相替代,各有各的使用场景
    - 注意各种字符拼接的格式
// 大厂将数据接口公开,提供给开发者免费或收费使用
    // 免费的关键字搜索接口:https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=&cb=liyang

5.28ajax和jsonp的封装

上一篇:nodejs


下一篇:jsonpath-rw处理json对象