Jsonp 关键字详解及json和jsonp的区别,ajax和jsonp的区别

一、Jsonp 关键字详解
1. Jsonp的全称是“JSON with Padding”,即“带填充的JSON”。
2. Jsonp是一种跨域请求方式,允许在不同域之间请求数据,常用于跨域解决方案。
3. Jsonp的原理是利用script标签的src属性可以跨域加载资源的特性,通过在url中加入callback参数,将回调函数名传递给服务端,服务端返回一小段js代码,调用回调函数,将数据以参数的形式传递给回调函数,并执行回调函数。回调函数名一般由客户端随机生成。
4. Jsonp请求使用的是get方法,因为script标签只支持get方法。

二、json和jsonp的区别
1. Json是一种数据格式,用于存储或交换数据。
2. Jsonp是一种跨域请求方式,可以帮助我们获取远程服务器端返回的json数据,并且不受同源策略的限制。
3. Json通常使用ajax进行请求和响应,且仅能在同域名下使用。
4. Jsonp则使用script标签进行请求,由于script标签的src属性无同源限制,所以可以跨域请求。

三、ajax和jsonp的区别
1. Ajax是XMLHttpRequest对象调用后台接口获取Json格式的数据,客户端通过js调用XMLHttpRequest实例,可以进行异步与服务器端的数据交互,在不需要刷新页面的情况下更新部分页面内容。
2. Jsonp使用的是获取json数据的方法。Jsonp是在客户端定义一个函数,通过script标签的src属性向服务端请求数据,在服务端接受到请求后将数据存放在客户端定义的函数中,再将整个函数返回给客户端。客户端拿到返回结果后解析数据。
3. 相对而言,Ajax更加灵活,但受同源策略限制,Jsonp则可以跨域请求,但功能受限。具体选择使用哪个技术需要按照具体情况决策。

示例1:
下面是一个使用ajax获取json的代码:

$.ajax({
  url:"http://example.com/data.json",
  type:"get",
  success:function(data) {
    console.log(data);
  },
});

示例2:
下面是一个使用jsonp获取数据的代码:

function callback(data){
    console.log(data);
}
var script = document.createElement("script");
script.src = "http://example.com/jsonp?callback=callback";
document.body.appendChild(script);

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Jsonp 关键字详解及json和jsonp的区别,ajax和jsonp的区别 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • javascript中indexOf技术详解

    JavaScript中indexOf技术详解 简介 JavaScript中的 indexOf() 方法可用于查找指定元素在数组或字符串中的位置,如果找到,则返回该元素的索引;如果未找到,则返回 -1。 indexOf() 方法有两个参数,第一个参数是要查找的元素,第二个参数是要开始查找的位置(可选,默认从第一位开始查找)。 使用方法 对于数组 语法: arr…

    JavaScript 2023年6月11日
    00
  • js 判断字符串中是否包含某个字符串的实现代码

    实现 JavaScript 判断一个字符串是否包含另一个字符串,我们可以使用 String 类型自带的 includes() 方法、indexOf() 方法和正则表达式,以下依次进行详细讲解和代码演示。 includes() 方法 includes() 方法用于判断一个字符串是否包含另一个字符串,返回值为布尔值。 语法: str.includes(searc…

    JavaScript 2023年5月28日
    00
  • js实现盒子滚动动画效果

    下面是关于”js实现盒子滚动动画效果”的完整攻略: 1.编写HTML结构 首先,在HTML文件中编写盒子结构,例如: <div class="container"> <div class="box" style="background-color: red;">Box 1&l…

    JavaScript 2023年6月10日
    00
  • JavaScript/Js脚本处理html元素的自定义属性解析(亲测兼容Firefox与IE)

    JavaScript/Js脚本处理html元素的自定义属性解析(亲测兼容Firefox与IE) 在HTML中,我们可以使用自定义属性来存储一些特定的数据。而在JavaScript/JS中,我们可以很方便地解析这些属性并对其进行操作。在这篇攻略中,我将向你展示如何使用JavaScript/JS处理HTML元素的自定义属性,并提供两个具体的示例。 HTML中的自…

    JavaScript 2023年6月10日
    00
  • Vue Element前端应用开发之根据ABP后端接口实现前端展示

    一、背景介绍 ABP(AspNet Boilerplate)是一个基于ASP.NET Core 3.0 + Angular 8.0 的模块化Web应用程序框架。Vue Element是Vue.js的一套UI组件库。本篇攻略将介绍如何通过调用ABP后端接口实现Vue Element前端应用开发。 二、环境要求 安装Vue CLI :npm install -g…

    JavaScript 2023年6月10日
    00
  • 整理Javascript流程控制语句学习笔记

    下面为你详细讲解“整理Javascript流程控制语句学习笔记”的完整攻略。 攻略概述 本攻略旨在帮助读者更好地理解和掌握Javascript中的流程控制语句,涵盖以下内容: 分类介绍Javascript中的流程控制语句。 详细讲解Javascript中每种流程控制语句的用法、语法和示例。 给出实际例子,帮助读者理解流程控制语句的应用场景。 提供学习Java…

    JavaScript 2023年5月27日
    00
  • 详解JavaScript编程中的数组结构

    详解JavaScript编程中的数组结构 数组是JavaScript编程中常用的一种数据结构,它可以存储一组有序的数据,并通过索引来访问其中的元素。在JavaScript中,数组可以存储任何类型的数据,包括数字、字符串、对象等。 数组的创建 JavaScript中可以通过下面几种方式来声明并创建一个数组: 使用数组字面量 var fruits = [‘app…

    JavaScript 2023年5月27日
    00
  • BootStrap中的表单大全

    BootStrap中的表单大全 BootStrap是目前使用最为广泛的前端框架之一,其中表单是网站开发中比较常用的组件之一。本文将对BootStrap中的表单进行详细讲解,包括表单组成、常用表单类型、表单验证等内容,帮助读者在BootStrap中更好地使用表单组件。 表单组成 在BootStrap中,一个表单必须包含以下几个组成部分: form标签:定义表单…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部