问题标签 [django-rest-framework]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - 使用 djangorestframework 的 HTTPS PUT 请求
我正在尝试使用 djangorestframework(DRF:http ://django-rest-framework.org/ )视图向 RESTful API Django Web 服务发送 HTTPS PUT 请求。由于 Django 的跨站点请求伪造 (CSRF) 保护,我无法让它工作。
PUT 请求旨在允许未经身份验证的用户添加资源。
我考虑过/尝试过的:
- 禁用 CSRF——不可接受。API 与非 API 服务在同一个 Django 实例上运行。禁用 CSRF 保护风险太大。
- 使用
X-Requested-With: XMLHttpRequest
PUT 请求的标头(我控制客户端)。不起作用 - 我仍然收到 CSRF 错误。 - 在 PUT 视图上使用
@crsf_exempt
装饰器。如果可以的话,我会的——框架定义了一个类,而不是一个视图。
我目前最好的选择是自己编写 PUT 视图,而不使用 DRF 的 View 类。然后我可以@crsf_exempt
成功使用装饰器。
我想使用 DRF 的 View 类——但看不到如何使用。你可以吗?
django - 使用 json 使用 djangorestframework 将图像上传到 imagefield 并使用 CURL 进行测试
我在 djangorestframework 中制作了几个 api。这我可以使用 api 的 html 形式和命令行中的 curl 进行测试。
现在我有一个模型的 api,其中一个字段是 ImageField。
我不知道要使用哪个 curl 命令。使用我在以 json 格式发布操作之前使用的语法,它将是:
但在这种情况下,照片不会被保存并留空(照片是可选字段)
添加-T /home/michel/test.jpg
我收到一条错误消息,说 127.0.0.1:800/api/v1/test.jpg 不作为 url 存在。
在 djangorestframework 的测试 html 表单中,一切正常。
使用该-F
选项,它说我一次只能执行 1 个请求...我还从 data-binary 中删除了数据类型
任何人都可以帮助我如何在 1 个命令中使用 json 中的图像和其他数据制作这个 curl 帖子。
python - Django Rest Framework 使用 url 加载指定模型
是否可以使用通用 url 设置为 django 中的所有模型实现 django rest 接口?
因此,而不是每个模型配置:
更通用的加载类型:
使用允许系统生成模型并将其渲染到其余接口的东西。
java - 使用 processbuilder 从 java 执行 curl
我正在用java编写一个测试porgram来测试我与django中的restfull api的连接(准确地说是djangorestframework)。选项之一是使用 curl 测试 api。从 shell 运行 curl 命令可以正常工作:例如:
这很好地返回了 json 格式的 api 根 URL 和帮助文本。
现在,当我尝试使用 ProcessBuilder 从 java 调用相同的内容时,我得到了这个答案:
我正在使用的java代码是:
因为我还通过以下方式捕获错误流:
我知道他启动 curl 命令,因为其中一个选项出错会显示 curl 帮助文本。
我不确定调用它有什么区别,很确定它是相同的命令。
顺便说一句,“getApiRootUrlString()”返回正确的 url:http://127.0.0.1:8000/api/v1/
jsonp - 将 jsonp 与 django-rest-framework 一起使用
django rest 框架发布说明声称在 0.3.0 中添加了 JSONP 支持。我还在框架中找到了一个 JSONPRenderer 类。但是,我似乎找不到任何关于如何使用这个东西的文档......我对 jsonp 相当陌生。
有没有人成功地将 jsonp 与 django rest 框架一起使用?
django - 如何禁用 django-rest-framework 的管理员风格的可浏览界面?
我正在使用django-rest-framework。它提供了一个很棒的 Django 管理风格的可浏览自文档 API。但是任何人都可以访问这些页面并使用该界面添加数据(POST)。我怎样才能禁用它?
django - 带有文件错误的 Django REST Framework POST 数据(使用 ModelResource)
尝试在 Django REST Framework 应用程序中使用文件发布数据时遇到了一个非常大的问题。我通过 djangorestframework 网站上的示例创建了一个简单的应用程序。所以我有 urls 文件:
在 urlpatters 中:
图像模型很简单:
在浏览器中测试 REST 页面,效果很好。甚至发布带有文件的数据。
我的问题是我想创建一个简单的 python 应用程序来发布数据。我使用了简单的 urllib2,但我得到 500 内部错误或 400 错误请求:
我也尝试过使用 MultipartPostHandler:
但相同:500 或 400 错误,服务器(python manage.py runserver)停止并出现以下错误:
如果有人有,请给我一个使用文件发布数据的示例,或者告诉我发布 python 代码有什么问题。我找不到更多的例子。
服务器看起来不错,我可以在浏览器中发布数据。非常感谢。
facebook - 移动应用程序通过 REST 访问 Django 后端的 Facebook 身份验证
我正在开发一个基于 Titanium Mobile 的移动应用程序,并使用其FB 模块通过 FaceBook 对用户进行身份验证。现在,我们还将为这个使用Django Rest Framework实现的移动应用程序实现 Web 服务。
我想知道如何最好地安全地实现这一点,以便一旦用户通过 FaceBook 进行身份验证,移动应用程序也可以通过 Django 后端进行身份验证。
python - “BlogPostResource”对象没有“请求”属性
我正在学习 Django REST Framework 并研究这个例子;
http://django-rest-framework.org/examples/blogpost.html
但是当我尝试打开时出现此错误http://localhost:8000/blog-post/
这些是我的示例文件:
资源.py
模型.py
网址.py
django - Django Rest框架序列化程序排除深度为2的外键
我制作了一个将对象作为 json 数据返回的 api。我正在使用 django-rest-framework 及其序列化程序。使用资源 (ModelResource) 我排除了一些字段,例如名为“所有者”的属性。其中一个字段是其自身的外键。我想在 api 中显示这个字段(所以我使用 depth=2),但我想排除与我在返回对象中排除的字段相同的字段。有没有一种很好的方法来做到这一点(我已经尝试了几件事但没有想要的结果)。
这是我的(简化的)代码:在 models.py 中:
在资源.py 中:
并在用于返回对象的视图中返回:
在响应中,它省略了排除字段(正如我想要和预期的那样)。
但在字段父级中,父级 myobject 包含我要隐藏的所有字段。
我正在寻找一种方法来表明对于这个父对象,序列化程序应该使用相同的资源,或者将辅助字段添加到排除列表中......
如果我使用 depth =1,它只显示它是否有父级 ([]),如果没有,则显示 null,我确实需要至少知道父级的 ID。