我是Django的新手,并将其用作创建用户的应用程序的后端.在前端,发布用户名的代码为:

var xobj = new XMLHttpRequest();
              xobj.overrideMimeType("application/json");
              xobj.open('POST', "http://www.local:8000/create_user/", true);
                xobj.setRequestHeader("Access-Control-Allow-Origin", "*");
              xobj.onreadystatechange = function () {
                  if (xobj.readyState == 4 && xobj.status == "200") {
                      console.log(xobj.responseText);
                  }
            }
              xobj.send(json);    

在后端,与url关联的函数处理json,但我收到错误 "请求的资源上没有‘Access-Control-Allow-Origin’标头.因此不允许访问源‘http://www.local:54521’". 这个问题的解决方案是什么? 我也遵循了"https://gist.github.com/strogonoff/1369619"的步骤,但问题依然存在.

推荐答案

您的前端和后端位于不同的端口上,这意味着您的Ajax请求受到跨域安全的影响.

您需要设置后端以接受来自不同来源(或仅仅是不同端口号)的请求.

试着阅读CORS,更具体地说,看看django cors headers

Django相关问答推荐

使用Django ORM在不相关的模型之间进行左外连接?

如何在Django模型mixin字段定义中引用模型名称?

把Django测试和testcafe结合起来?

使用序列化器获取Django ORM auth_user. id数据

如何在Django REST框架中使用FactoryBoy创建不同的项目

在Django上传JPEG图像时遇到问题

有谁知道是否可以将您的 Django Heroku 应用程序放到 App Store/Google Play 上?

关于Django中批量保存对象的问题

在 django/python 上访问请求标头

Django 密码以什么格式存储在数据库中?

Django:get_or_create 使用 together_unique 引发重复条目

使用基于日期/时间的对象进行 Django 单元测试

如何从 django 的 db 模型中获取字段类型字符串

django:TypeError:'tuple'对象不可调用

模拟 Django 查询集以测试采用查询集的函数

Django中的自定义排序

如何使 Django 的开发服务器公开?

如何在 django 2.0 admin 中使用 allow_tags?

为整个结果集向 Django Rest Framework 结果添加额外数据

Django - 指定 Django 管理员应该使用哪个模型管理器