Django实现跨域的2种方法


Posted in Python onJuly 31, 2019

jsonp

方式一:指定返回方法

# 后端
def view(request):
  callback = request.GET.get('callback')
  return HttpResponse('%s("我要上鸭王")' %(callback,));
# javascript
function submitJsonp4() {
  $.ajax({
    url: 'http://127.0.0.1:9000/xiaokai.html',
    type: 'GET', //写post 没有用 只能发get
    dataType: 'jsonp', // 伪造ajax 基于script标签的创建和删除
    jsonp: 'callback', //告诉后台这个key
    jsonpCallback: 'func' //要返回这个函数名 ******8
  })
}
function func(arg) {
  console.log(arg);
}

方式二:不指定返回方法

function submitJsonp4() {
  $.ajax({
    url: 'http://127.0.0.1:9000/xiaokai.html',
    type: 'GET', //写post 没有用 只能发get
    dataType: 'jsonp', // 伪造ajax 基于script标签的创建和删除
    jsonp: 'callback', //告诉后台这个key
    // 思考 这时候的函数名为一个随机的字符串
    // 响应直接 调用success 对应的方法
    // 如果自己写了jsonpCallback的值
    // 不会报错,而是把自己写再拼上随机的 同样回调success对应的方法
    success:function(data){
      console.log()
    }
  })
}

cors

def view(request):
  response=HttpResponse(json.dumps(info))  
  # 添加白名单 允许哪个域名可以访问
  response["Access-Control-Allow-Origin"]="http://127.0.0.1:8006"
  #response["Access-Control-Allow-Origin"]="*"
  return response
$(".get_service").click(function () {

   $.ajax({
     url:"http://127.0.0.1:8008/service/",
     success:function (data) {
       console.log(data)
     }
   })
 })

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
详解JavaScript编程中的window与window.screen对象
Oct 26 Python
python指定写入文件时的编码格式方法
Jun 07 Python
Python发展史及网络爬虫
Jun 19 Python
分析运行中的 Python 进程详细解析
Jun 22 Python
Django基础三之视图函数的使用方法
Jul 18 Python
Python拆分大型CSV文件代码实例
Oct 07 Python
Python操作列表常用方法实例小结【创建、遍历、统计、切片等】
Oct 25 Python
pyecharts绘制中国2020肺炎疫情地图的实例代码
Feb 12 Python
python GUI库图形界面开发之PyQt5中QWebEngineView内嵌网页与Python的数据交互传参详细方法实例
Feb 26 Python
Python3合并两个有序数组代码实例
Aug 11 Python
Python爬虫之Selenium实现窗口截图
Dec 04 Python
python爬取新闻门户网站的示例
Apr 25 Python
Django CSRF跨站请求伪造防护过程解析
Jul 31 #Python
在VS2017中用C#调用python脚本的实现
Jul 31 #Python
使用pip安装python库的多种方式
Jul 31 #Python
python实现几种归一化方法(Normalization Method)
Jul 31 #Python
python Django编写接口并用Jmeter测试的方法
Jul 31 #Python
python实现windows倒计时锁屏功能
Jul 30 #Python
python创建属于自己的单词词库 便于背单词
Jul 30 #Python
You might like
控制PHP的输出:缓存并压缩动态页面
2013/06/11 PHP
利用curl抓取远程页面内容的示例代码
2013/07/23 PHP
简单介绍win7下搭建apache+php+mysql开发环境
2015/08/06 PHP
thinkphp在php7环境下提示Cannot use ‘String’ as class name as it is reserved的解决方法
2016/09/30 PHP
最常用的12种设计模式小结
2011/08/09 Javascript
不要使用jQuery触发原生事件的方法
2014/03/03 Javascript
JavaScript访问CSS属性的几种方式介绍
2014/07/21 Javascript
JS使用parseInt解析数字实现求和的方法
2015/08/05 Javascript
jQuery+css3实现Ajax点击后动态删除功能的方法
2015/08/10 Javascript
深入解析JavaScript的闭包机制
2015/10/20 Javascript
Javascript基础教程之比较null和undefined值
2016/05/16 Javascript
JavaScript的ExtJS框架中数面板TreePanel的使用实例解析
2016/05/21 Javascript
Node.js下自定义错误类型详解
2016/10/17 Javascript
BootStrap表单控件之复选框checkbox和单选择按钮radio
2017/05/23 Javascript
微信小程序 Buffer缓冲区的详解
2017/07/06 Javascript
用JavaScript做简易的购物车的代码示例
2017/10/20 Javascript
详解基于Koa2开发微信二维码扫码支付相关流程
2018/05/16 Javascript
JS实现HTML页面中动态显示当前时间完整示例
2018/07/30 Javascript
JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
2018/07/31 Javascript
element-ui 的el-button组件中添加自定义颜色和图标的实现方法
2018/10/26 Javascript
Nodejs异步流程框架async的方法
2019/06/07 NodeJs
小程序分享链接onShareAppMessage的具体用法
2020/05/22 Javascript
Vue在H5 项目中使用融云进行实时个人单聊通讯
2020/12/14 Vue.js
[01:10:16]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第一局
2016/02/27 DOTA
python 正则式使用心得
2009/05/07 Python
Python fileinput模块使用介绍
2014/11/30 Python
Python如何获取系统iops示例代码
2016/09/06 Python
Python实现模拟分割大文件及多线程处理的方法
2017/10/10 Python
Python可变参数*args和**kwargs用法实例小结
2018/04/27 Python
Python + OpenCV 实现LBP特征提取的示例代码
2019/07/11 Python
python读文件的步骤
2019/10/08 Python
python3用PyPDF2解析pdf文件,用正则匹配数据方式
2020/05/12 Python
Python面试题:Python是如何进行内存管理的
2014/08/04 面试题
优秀村官事迹材料
2014/01/10 职场文书
酒店人事主管岗位职责
2015/04/11 职场文书
MySQL 不等于的三种使用及区别
2021/06/03 MySQL