前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >AJAX 请求常用参数(cache、dataType、processData、contentType)

AJAX 请求常用参数(cache、dataType、processData、contentType)

作者头像
友儿
发布2022-09-11 14:42:20
发布2022-09-11 14:42:20
1.3K0
举报
文章被收录于专栏:友儿友儿
  • cache 是否在缓存中读取数据的读取。
    • cache 属性是true(默认值)时:在第一次请求完成之后,如果地址和参数不变化,第二次去请求,会默认获取缓存中的数据,不去读取服务器端的最新数据。
    • cache 属性是flase(默认值)时:每次读取的是最新的数据。
    • ajax 缓存只对GET方式的请求有效,因为浏览器认为POST请求提交的内容必定有变化,所以不走缓存。
  • dataType 是预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML。在 1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:
    • xml 返回 XML 文档,可用 jQuery 处理。
    • html 返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。
    • script 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)
    • json 返回 JSON 数据 。
    • jsonp 使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。
    • text 返回纯文本字符串
  • processData
    • 在使用jQuery的$.ajax()方法的时候参数processData默认为true(该方法为jQuery独有的)
    • 默认情况下会将发送的数据序列化以适应默认的内容类型application/x-www-form-urlencoded
    • 如果想发送不想转换的的信息的时候需要手动将其设置为false
    • 在遇到的是传输的是blob对象的时候就是不需要将传输的数据序列化,一般的还有类似DOM树等
  • contentType 发送信息至服务器时内容编码类型(告诉服务器从浏览器提交过来的数据格式),默认值为contentType = "application/x-www-form-urlencoded"
    • 在 ajax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档