Python+vue前后端分离交互跨域解决方法之一——nginx反向代理

文章目录

 Python web学习入门之前后端交互跨域解决方法nginx反向代理


文章目录


前言

相信很多小伙伴跟我一样,喜欢前端自学前端,但是在学习前端过程中,有个很大的困难,就是如何进行实战,我们在学习了前端框架后,兴致勃勃想要来搞个自己的网站,历经千辛万苦终于整出了我们满意的界面,但是,接下来怎么跟后端进行交互呢,这里就涉及到前后端分离环境搭建,本片文章我只介绍交互过程中涉及的跨域问题的解决方法。


一、跨域是什么?

网上的介绍资料是浏览器不能执行其他网站的脚本。它是由浏览器的同源(域名,协议,端口)策略造成的,是浏览器对JavaScript施加的安全限制。当前端调用处于不同域名或者端口的时候,就会出现跨域问题。

简单来说,就是浏览器使用的域名协议端口,跟我们电脑自身使用的不一样,浏览器自身的安全机制就不允许电脑自身访问,解决方法:就是找一位代理小姐,在它俩间充当对话筒,当然这位代理小姐必须是同时认识它俩滴。接下来介绍nginx代理

二、nginx反向代理的使用步骤

1.前后端使用介绍

后端我是用的是Python的第三方库django,前端采用的是vue框架

 

2.Ngjnx方向代理接口跨域配置

首先同源策略是浏览器上的安全策略,不是HTTP协议的一部分;服务器端调用HTTP接口只是使用HTTP协议,不会执行JS脚本,不需要同源策略,也就不存在跨域问题。

思路如下:

首先需要下载nginx,网上查找一下教程,然后打开它的文件夹,找到conf下的nginx.config文件做一下修改(主机名和ip根据自己电脑的修改,可能不一样)

通过nginx配置一个代理服务器(域名与domin1(localhost)相同,端口不同)做跳板机,反向代理访问domin2(后端运行ip地址)接口,并且可以顺便修改cookie写入,实现跨域登录)

最后浏览器只要访问http://domin1:监听端口号

http://localhost:8001

  location / {
            #root   E:\python\Test1dajian\vue-admin-template\public;
            #index  index.html index.htm;
            proxy_pass http://127.0.0.1:9528;
            proxy_cookie_domain 127.0.0.1 localhost;
             index index.html index.html;
            add_header Access-Control-Allow-Origin http://localhost;
        }


总结

以上是本学期因为需要完成python课程设计,自己在前后端分离跨域遇到的问题,个人觉得nginx反向代理解决跨域问题比较方便,不喜互喷哈!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python+Vue+Django前后端分离项目实战,涉及到使用Python语言编写后端服务,使用Vue框架构建前端界面,并通过Django框架作为API接口实现前后端数据交互的方式。在实战项目中也会涉及到数据库设计和调用、权限控制、文件上传等问题的解决。 ### 回答2: PythonVue和Django是现在非常流行的前后端开发技术。如果你想学习这些技术,那么前后端分离是一个很好的选择。在这个项目中使用Python作为后端编程语言,Django作为Web框架,Vue作为前端框架。我们可以在这个项目中学习到很多关于前后端分离的经验。 首先,前后端分离可以让我们更好地组织我们的代码。在一个分离的项目中,我们可以通过明确的接口来分离前端和后端。这样一来,我们可以专注于开发代码,而不必担心前后端之间的交互问题。 其次,前后端分离可以使我们更好地实现可重用性。在这个项目中,我们可以编写可重用的Vue组件,并在不同的前端页面中使用它们。同样地,我们也可以编写可重用的Django应用程序,并在不同的后端端点中使用它们。这会使我们的代码更加清晰简洁,也可以提高我们的开发效率。 最后,前后端分离可以让我们更好地实现可维护性。在一个分离的项目中,我们可以更轻松地进行单元测试和端到端测试。这可以帮助我们保持代码的质量,并尽早发现和解决潜在的问题。 总之,PythonVue和Django前后端分离项目是一个非常好的学习项目。通过这个项目,我们可以从实践中学习如何使用这些技术,并在以后的项目中更好地应用它们。 ### 回答3: PythonVue和Django是目前非常流行的技术栈之一,其中Python和Django主要用于后端开发,Vue则是一款流行的前端框架。Python和Django的优点在于它们易于学习、可扩展性强、社区活跃,并且可以用于构建各种类型的Web应用程序。而Vue的优点在于它简洁、高效、组件化,并且可以很好地配合其他框架和库使用。 前后端分离是一种可以将前端和后端分别开发的方法,这种方法具有很多优点。首先,可以使开发人员更加专注于各自的领域,减少互相干扰和影响。其次,这种方法可以提高应用程序的可维护性和可扩展性。最后,这种方法还可以提高开发效率,使开发人员能够更加高效地开发应用程序。 在前后端分离项目实战中,需要注意以下几点。首先,需要确定应用程序的需求,确定前端和后端的接口规范。其次,需要使用合适的工具和框架来完成前后端的开发任务。对于后端开发,可以使用Django的REST框架,这个框架可以很快地构建RESTful API,并且配合数据库使用。而对于前端开发,则可以使用Vue框架来开发,Vue可以很好地处理数据和UI逻辑。最后,需要着重测试和调试应用程序,确保应用程序的正确性和可用性。 总的来说,PythonVue和Django是一组非常流行的技术栈,非常适合用于前后端分离项目的开发。在开发前需要确定好需求,选择好工具和框架,开发期间需要注重测试和调试,这样才能开发出高质量的应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值