- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章使用Flask和Django中解决跨域请求问题由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
1
|
pip install flask
-
cors
|
代码示例 。
1
2
3
|
from
flask_cors
import
*
app
=
Flask(__name__)
CORS(app, supports_credentials
=
True
)
|
Flask-CORS文档: https://flask-cors.readthedocs.io/en/latest/ 。
1
|
pip install django
-
cors
-
headers
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
INSTALLED_APPS
=
[
...
'corsheaders'
,
...
]
MIDDLEWARE_CLASSES
=
(
'django.middleware.security.SecurityMiddleware'
,
'django.contrib.sessions.middleware.SessionMiddleware'
,
'corsheaders.middleware.CorsMiddleware'
,
# 添加这一行
'django.middleware.common.CommonMiddleware'
,
# 'django.middleware.csrf.CsrfViewMiddleware', 注释这一行
'django.contrib.auth.middleware.AuthenticationMiddleware'
,
'django.contrib.messages.middleware.MessageMiddleware'
,
'django.middleware.clickjacking.XFrameOptionsMiddleware'
,
)
# 跨域增加忽略
CORS_ALLOW_CREDENTIALS
=
True
# 指明在跨域访问中,后端是否支持对cookie的操作
CORS_ORIGIN_ALLOW_ALL
=
True
# 允许所有主机请求你的API
CORS_ORIGIN_WHITELIST
=
(
# 跨域请求白名单,为空时默认为全部
'http://127.0.0.1:8080'
,
'http://localhost:8080'
,
)
CORS_ALLOW_METHODS
=
(
'DELETE'
,
'GET'
,
'OPTIONS'
,
'PATCH'
,
'POST'
,
'PUT'
,
'VIEW'
,
)
CORS_ALLOW_HEADERS
=
(
'XMLHttpRequest'
,
'X_FILENAME'
,
'accept-encoding'
,
'authorization'
,
'content-type'
,
'dnt'
,
'origin'
,
'user-agent'
,
'x-csrftoken'
,
'x-requested-with'
,
)
|
补充:Flask和Django的区别 。
Flask确实很“轻”,不愧是Micro Framework,从Django转向Flask的开发者一定会如此感慨,除非二者均为深入使用过 。
Flask自由、灵活,可扩展性强,第三方库的选择面广,开发时可以结合自己最喜欢用的轮子,也能结合最流行最强大的Python库 。
入门简单,即便没有多少web开发经验,也能很快做出网站 。
非常适用于小型网站 。
非常适用于开发web服务的API 。
开发大型网站无压力,但代码架构需要自己设计,开发成本取决于开发者的能力和经验 。
各方面性能均等于或优于Django 。
Django自带的或第三方的好评如潮的功能,Flask上总会找到与之类似第三方库 。
Flask灵活开发,Python高手基本都会喜欢Flask,但对Django却可能褒贬不一 。
Flask与关系型数据库的配合使用不弱于Django,而其与NoSQL数据库的配合远远优于Django 。
Flask比Django更加Pythonic,与Python的philosophy更加吻合 。
Django太重了,除了web框架,自带ORM和模板引擎,灵活和自由度不够高 。
Django能开发小应用,但总会有“杀鸡焉用牛刀”的感觉 。
Django的自带ORM非常优秀,综合评价略高于SQLAlchemy 。
Django自带的模板引擎简单好用,但其强大程度和综合评价略低于Jinja 。
Django自带ORM也使Django与关系型数据库耦合度过高,如果想使用MongoDB等NoSQL数据,需要选取合适的第三方库,且总感觉Django+SQL才是天生一对的搭配,Django+NoSQL砍掉了Django的半壁江山 。
Django目前支持Jinja等非官方模板引擎 。
Django自带的数据库管理app好评如潮 。
Django非常适合企业级网站的开发:快速、靠谱、稳定 。
Django成熟、稳定、完善,但相比于Flask,Django的整体生态相对封闭 。
Django是Python web框架的先驱,用户多,第三方库最丰富,最好的Python库,如果不能直接用到Django中,也一定能找到与之对应的移植 。
Django上手也比较容易,开发文档详细、完善,相关资料丰富 。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我。如有错误或未考虑完全的地方,望不吝赐教.
原文链接:https://blog.csdn.net/willbkimps/article/details/91492954 。
最后此篇关于使用Flask和Django中解决跨域请求问题的文章就讲到这里了,如果你想了解更多关于使用Flask和Django中解决跨域请求问题的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我对 Python-Django 和 web 开发还很陌生,我被困在这个使用 POST 创建新资源的特殊问题上。 我正在为 REST API 使用 Django REST 框架,我正在尝试创建一个新资
我已经使用 Django-storages 成功地将 Word 文档存储到 S3。 class Document(TitleSlugDescriptionModel, TimeStampedModel
我有 2 个关于模型代理的问题, 如何从模型对象创建代理对象? 如何从模型查询集创建代理查询集? 例如,假设我们定义了: from django.contrib.auth.models import
我想编写一个直接执行 HTTP 请求的单元测试(而不是使用 django.test.client.Client)。 如果您好奇为什么 - 那是因为我想测试我从 Django 应用程序公开的 Thrif
我为我的个人网站启动了一个 django 项目来学习 django。到目前为止,我已经将我的开发环境设置为我需要的一切,并遵循 this很棒的教程来创建一些基本的数据结构和模板。现在我想开始使用我之前
我已经阅读了很多关于如何在使用 Django 注册时添加额外字段的信息,例如 here 、 here 和 here 。代码片段是: forms.py(来自注册应用程序) class Registrat
我正在编写小型社交应用程序。功能之一是在网站标题中写入用户名。因此,例如,如果我登录并且我的名字是Oleg(用户名),那么我应该看到: Hello, Oleg | Click to edit prof
我有一个使用 Django 和 Django Rest 框架开发的应用程序。我想将 django-reversion 功能添加到我的应用程序中。 我已经尝试过http://django-reversi
我有一个简单的 HTML 表单,我没有使用 Django 表单,但现在我想添加一个选择。 选择最容易创建为 Django ChoiceField (与通过循环等手动创建选择相反),但是,如果没有在 D
我不明白为什么人们以两种方式编写外键,这样做的目的是什么?它们是相同还是不同? 我注意到有些人这样写: author = models.ForeignKey(Author, on_delete=mod
我想在我的 Django 应用程序中获取评论最多的十个帖子,但我做不到,因为我想不出合适的方法。 我目前正在使用 django 评论框架,并且我已经看到使用 aggregate or annotate
这对于 Django 1.2 仍然有效吗? Custom Filter in Django Admin on Django 1.3 or below 我已经尝试过,但管理类中的 list_filter
问题在于,当 django-compressor 编译为 .js 文件的 CoffeeScript 文件中引用 {{ STATIC_URL }} 时,它无法正确加载。 在我的 django 模板中,我
我正在尝试将一些字段从一个 django 模型移动到一个新模型。假设我有一个书籍模型: class Book(models.Model): title = models.CharField(max
我想在我的 Django 应用程序中获取评论最多的十个帖子,但我做不到,因为我想不出合适的方法。 我目前正在使用 django 评论框架,并且我已经看到使用 aggregate or annotate
目前我正在寻找在 Django 中实现访问控制。我已经阅读了有关内置权限的内容,但它并不关心每个对象的基础。例如,我想要“只有创建者可以删除自己的项目”之类的权限。所以我读到了 django-guar
嗨,我正在将我的 Django 模型的一个字段的值设置为其他模型的另一个字段的值。这个值应该是动态变化的。 这是我的第一个模型 class MainModel(AbstractBaseUser, Pe
我正在尝试为我的模型创建一个编辑表单。我没有使用模型表单,因为根据模型类型,用户可以使用不同的表单。 (例如,其中一个表单有 Tinymce 小部件,而另一个没有。) 有没有什么方法可以使用模型设置表
Django 模板中的搜索字段 如何在类似于此图像的 Django 模板中创建搜索字段 http://asciicasts.com/system/photos/1204/original/E354I0
根据 Django documentation ,如果 Django 安装激活了 AuthenticationMiddleware,HttpRequest 对象有一个“user”属性代表当前登录的用户
我是一名优秀的程序员,十分优秀!