跨域 反向解析

跨域

在url必须声明命名空间

app_name = ‘自定义‘

在C盘中找到etc文件夹下的hosts文件,进入hosts文件中添加你要添加的域

让后在黑窗口下指定域名

例:

python manage.py runserver 80

在命令后面直接指定端口号

在settings

# 定义跨域中间件

‘corsheaders.middleware.CorsMiddleware‘,

# 配置跨域范围

CORS_ALLOW_CREDENTIALS = True

CORS_ORIGIN_ALLOW_ALL = True

反向解析

定义解析类

# redirect :重定向

from django.shortcuts import render,redirect

from django.http import HttpResponse,HttpResponseRedirect

# 导入类视图

from django.views import View

# 导入反向解析方法

from django.urls import reverse

# 定义类视图

class Test(View):

  def get(self,request):

    # 第一个是命名空间 ,第二个路由命名 使用第二个来控制参数

    # 跳转

    return redirect(reverse(‘myapp:test_name‘,args=(456,)))

    return redirect(reverse(‘myapp:test_name_dict‘,kwargs={‘username‘:666}))

    return HttpResponseRedirect(reverse(‘myapp:test_name‘))

    return HttpResponse(‘这里是正向解析‘)

# 定义反向解析类

class TestRev(View):

  def get(self,request,p1):

  print(p1)

  return HttpResponse(‘这里是反向解析‘)

# 定义反向解析类 通过dict传参

class TestRevDict(View):

  def get(self,request,username):

    return HttpResponse(‘这里是反向解析124qds‘+username)

# 定义接口返回数据

class ReturnText(View):

  def post(self,request):

    # 接收参数

    username = request.POST.get(‘username‘,‘未收到‘)

    return HttpResponse(‘接收到的是‘+username)

写解析模板

<!DOCTYPE html>

{# 加载静态文件#}

{% load static %}

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<meta http-equiv="X-UA-Compatible" content="ie=edge">

<title>首页</title>

{# 载入js库 #}

<script src="{% static ‘js/jquery-1.12.1.min.js‘ %}"> </script>

<script src="{% static ‘js/axios.js‘ %}"></script>

</head>

<body>

  <a href="/test">正向解析</a>

  {# 第一个参数应用名称(命名空间) ,第二个参数自定义命名 #}

  <a href="{% url ‘myapp:test_name‘ 123 %}">反向解析</a>

  <a href="{% url ‘myapp:test_name_dict‘ username=999 %}">反向解析</a>

  <button onclick="send_msg()">发送异步请求</button>

  <script>

    function send_msg(){

      let param = new URLSearchParams();

      /  /将参数传递给对象

      param.append(‘username‘,‘jack‘);

      axios({

        //指定请求地址

        url:‘http://mymac.cn/returntest‘,

        //请求参数

        data:param,

        //请求类型

        method:‘post‘,

        //接口返回值类型

        responseType:‘text‘,

      })

      .then(function(obj){

        console.log(obj);

        alert(obj.data);

      });

    }

</script>

</body>

</html>

原文地址:https://www.cnblogs.com/chengdongzi/p/10538179.html

时间: 2024-07-30 06:08:03

跨域 反向解析的相关文章

jsonp跨域原理解析

前言: 跨域请求是前台开发中经常遇到的场景,但是由于浏览器同源策略,导致A域下普通的http请求没法加载B域下的数据,跨域问题由此产生.但是通过script标签的方式却可以加载非同域下的js,因此可以利用这一特性,进行跨域数据请求. 先看一下跨域导致的问题,测试域分别为 localhost 和 www.icity366.com, 下文分别对应A域和B域,测试文件为A域下的 data.jsp, 我们在A(localhost)域下请求B(www.icity366.com)域下的数据,看一下data.

前端开发如何独立解决跨域问题

背景 跨域是由浏览器同源策略引起的,是指页面请求的接口地址,必须与页面url地址处于同域上(即域名,端口,协议相同).这是为了防止某域名下的接口被其他域名下的网页非法调用,是浏览器对JavaScript施加的安全限制. 这个措施出发点是好的,但在项目开发的过程中,常常给前端开发者带来麻烦. 由于页面开发中,静态资源是放在本地电脑上的,访问这些资源通常通过IP方式(127.0.0.1)或者localhosts来访问,与线上服务器所在域名不符,不能顺利进行接口调用. 解决跨域问题常用的解决方案有两个

探讨跨域请求资源的几种方式

什么是跨域 JSONP proxy代理 cors xdr 由于浏览器同源策略,凡是发送请求url的协议.域名.端口三者之间任意一与当前页面地址不同即为跨域.具体可以查看下表(来源) JSONP 这种方式主要是通过动态插入一个script标签.浏览器对script的资源引用没有同源限制,同时资源加载到页面后会立即执行(没有阻塞的情况下). 1 <script> 2 var _script = document.createElement('script'); 3 _script.type = &

关于ajax访问跨域问题

记得以前在项目中使用ajax遇到跨域问题, 一开始不知道ajax不能进行跨域请求接口,一直没有打开F12查看,就是返回不到数据,还以为自己的方法写错了,后来打开F12才知道是ajax不能进行跨域! 现在知道了问题,所以要找到解决方法! 在网上百度了各种方法: 第一种是在你访问的php文件中添加如下: 这种允许所有的网址访问: header('Access-Control-Allow-Origin:*'); 这种是允许你指定的网址进行访问: header('Access-Control-Allow

403 Invalid CORS request 跨域问题

5.跨域问题 跨域:浏览器对于javascript的同源策略的限制 . 以下情况都属于跨域: 跨域原因说明 示例 域名不同 www.jd.com 与 www.taobao.com 域名相同,端口不同 www.jd.com:8080 与 www.jd.com:8081 二级域名不同 item.jd.com 与 miaosha.jd.com 如果域名和端口都相同,但是请求路径不同,不属于跨域,如: www.jd.com/item www.jd.com/goods http和https也属于跨域 而我

跨域问题 - Nginx反向代理

Nginx反向代理的思路,就是通过Nginx解析URL地址的时候进行判断,将请求转发的具体的服务器上. 解决思路 跨域问题,是由于JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象. 如果,我们将不同的域名整合到一个域,换句话说,通过子目录的方式划分,是不是就能解决跨域问题呢? 解决跨域问题 自定义本地的url请求规则 ,如 www.720ui.com/blog 则对应要nginx服务转发到 blog.720ui.com . 配置 nginx.conf 文件,将本地带有特定前缀

CORS跨域与Nginx反向代理跨域优劣对比

最近写了一些关于前后端分离项目之后,跨域相关方案的基本原理和常见误区的帖子,主要包括CORS和Nginx反向代理.这两种方案项目中都有在用,各有优缺,关于具体使用哪种方案,大家的观点也不大一致,本文主要就此展开一下,从前后端及服务器配置.安全性.移植灵活性.扩展性等方面详细对比一下两种方案的优缺,以便于后期在方案选型上对大家有所帮助. 前端配置 CORS方案:跨域时部分浏览器默认不携带cookie,因此为了携带cookie需要设置一下xmlhttprequest的withCrendetails属

【09】Nginx:静态压缩 / 日志切割 / 防盗链 /恶意解析/ 跨域

写在前面的话 上一节我们谈了关于 nginx 服务器的一些简单的安全优化问题,能够帮助我们解决一部分线上服务存在的安全隐患.但是想要提升用户体验这是原因不够的,我们还需要从服务的优化方面入手. 本节更多的还是偏理论的东西,会给出相应的配置.可能有些就无法立即做测试. 访问优化:静态压缩 我们知道一个网站总会有一些 CSS/JS 等静态文件需要加载,如果用户每次请求都需要去服务器下载一遍,比如 Jquery 这种根本不会变的.明显会造成带宽的浪费.同时由于用户可能本身网速还不好,就容易给用户带来不

JSONP跨域的原理解析

JSONP跨域的原理解析 一种脚本注入行为 在 2011年10月27日 那天写的     已经有 99238 次阅读了 感谢 参考或原文 JavaScript是一种在Web开发中经常使用的前端动态脚本技术.在JavaScript中,有一个很重要的安全性限制,被称为"Same-Origin Policy"(同源策略).这一策略对于JavaScript代码能够访问的页面内容做了很重要的限制,即JavaScript只能访问与包含它的文档在同一域下的内容. JavaScript这个安全策略在进