1、通过jq的$.ajax()完成跨域,这是我比较喜欢的一种方式。

代码如下:

$.ajax({

  type:'get',

  async:true,

  url:'地址',

  dataType:'jsonp',   //这里一定要写

  jsonp:'callback',

  jsonCallback:'自定义的一个名字',

  success:function(data){

    console.log(data);

  },

  error:function(data){

    console.log(‘错误’)

  }

})

2、通过$.getJSON(又四个参数)

$.getJSON('http://api.douban.com/v2/movie/top250?callback=?',{
  'start':6,
  'count':10
  },function(data){
  console.log(data);
  var len=data.subjects.length;
  for(var i=0;i<len;i++){
  $('<tr>'+
  '<td>'+
  '<img src="'+data.subjects[i].images.large+'" />'+
  '</td>'+
  '<td style="width:200px;text-align: center;">'+
  '<span>'+data.subjects[i].directors[0].name+'</span>'+
  '</td>'+
  '<td style="width:200px;text-align: center;">'+
  '<span>'+data.subjects[i].title+'</span>'+
  '</td>'+
  '</tr>').appendTo($('table'));
  }
},'json')

3、js原生的 方式 :定义一个函数 操作返回的json数据,将这个函数作为回调函数,动态创建一个script标签,标签的src是数据地址在后面添上 callback=回调函数,将标签添加到body中。

(function(){
  var url='http://api.douban.com/v2/movie/top250?start=6&count=10';
  window.demo=function(res){
   alert(JSON.stringify(res));
  };
  var jsonp=function(url,fn){
   var ele=document.createElement('script');
   ele.src=url+'?callback='+fn;
   document.body.appendChild(ele);
  };
  jsonp(url,'demo');
 })

jsonp的三种跨域方式的更多相关文章

  1. 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之十二 || 三种跨域方式比较,DTOs(数据传输对象)初探

    更新反馈 1.博友@落幕残情童鞋说到了,Nginx反向代理实现跨域,因为我目前还没有使用到,给忽略了,这次记录下,为下次补充.此坑已填 2.提示:跨域的姊妹篇——<三十三║ ⅖ 种方法实现完美跨 ...

  2. Javascript几种跨域方式总结

    在客户端编程语言中如javascript,同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和操作另外一个域的绝大部分属性和方法.只有当两个域具有相同的协议,相同的主机,相同的端口时,我们就认定 ...

  3. 同源策略(same-origin policy)及三种跨域方法

    同源策略(same-origin policy)及三种跨域方法 1.同源策略 含义: 同源是指文档的来源相同,主要包括三个方面 协议 主机 载入文档的URL端口 所以同源策略就是指脚本只能读取和所属文 ...

  4. JSONP和CORS两种跨域方式的简单介绍和解决方案实例

    随着软件开发分工趋于精细,前后端开发分离成为趋势,前端同事负责前端页面的展示及页面逻辑处理,服务端同事负责业务逻辑处理同时通过API为前端提供数据也为前端提供数据的持久化能力,考虑到前后端同事开发工具 ...

  5. JSONP和CORS两种跨域方式的优缺点及使用方法原理介绍

    随着软件开发分工趋于精细,前后端开发分离成为趋势,前端同事负责前端页面的展示及页面逻辑处理,服务端同事负责业务逻辑处理同时通过API为前端提供数据也为前端提供数据的持久化能力,考虑到前后端同事开发工具 ...

  6. web三种跨域请求数据方法

    以下测试代码使用php,浏览器测试使用IE9,chrome,firefox,safari <!DOCTYPE HTML> <html> <head>     < ...

  7. 「JavaScript」四种跨域方式详解

    超详细并且带 Demo 的 JavaScript 跨域指南来了! 本文基于你了解 JavaScript 的同源策略,并且了解使用跨域跨域的理由. 1. JSONP 首先要介绍的跨域方法必然是 JSON ...

  8. 「JavaScript」JS四种跨域方式详解

    原文地址https://segmentfault.com/a/1190000003642057 超详细并且带 Demo 的 JavaScript 跨域指南来了! 本文基于你了解 JavaScript ...

  9. JSONP原理及实现跨域方式

    今天做页面时,后台给了个接口:https://a.a.com/a/a.json,我页面的上线地址是:http://b.b.com.显而易见,因为浏览器同源策略的限制,通过ajax无法无法取得json的 ...

随机推荐

  1. 【原】css实现两端对齐的3种方法

    说到两端对齐,大家并不陌生,在word.powerpoint.outlook等界面导航处,其实都有一个两端对齐(分散对齐)的按钮,平时使用的也不多,我们更习惯与左对齐.居中对齐.右对齐的方式来对齐页面 ...

  2. BeanShell Assertion in Jmeter

    以下为几个beanshell assertion的栗子: if (ResponseCode != null && ResponseCode.equals ("200" ...

  3. C#手工注入辅助工具

    看了某牛出版的MySql手注天书一神书,基本上解决了SQL注入上的知识点,于是打完(酱油)省赛回来通宵了一晚上写了个工具 方便语句构造SQL 联合查询 报错注入 盲注 读写 命令执行 基本都有整合 遇 ...

  4. poj 2481

    Cows Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 16163   Accepted: 5380 Description ...

  5. TabBarController

    1.两种方式创建系统TabBarController -(id)init{ self = [super init]; if( self ) { //newTask HSNewTaskViewContr ...

  6. 对于多个列的转行(一个值均匀分布在两个列中),对于个别字段通过取别名,join方式解决。

    例如,这个表的结构: select r.* from RPDATA2016 r WHERE r.data_bbid='HY052' 如图 对于最后两列,如果是字符类型,会存在倒数第二列,是数字类型,会 ...

  7. css3 @font-face设置嵌入字体

    @font-face能够加载服务器端的字体文件,让浏览器端可以显示用户电脑里没有安装的字体

  8. 单机多实例Tomcat部署

    单机单用户基础上, 如何运行多个tomcat实例. 首先是tomcat的目录结构 bin    – 包含所有运行tomcat的二进制和脚本文件 lib     – 包含tomcat使用的所有共享库 c ...

  9. Anterior and posterior commissures

    Source: https://en.wikipedia.org/wiki/Posterior_commissure Figrues archive.

  10. 花生壳动态IP域名解析之python自动提交公网IP

    #!/usr/bin/env python import re import os import time import random ip_current = '' while True: myip ...