问题标签 [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.

0 投票
1 回答
1135 浏览

django - 使用 djangorestframework 的 HTTPS PUT 请求

我正在尝试使用 djangorestframework(DRF:http ://django-rest-framework.org/ )视图向 RESTful API Django Web 服务发送 HTTPS PUT 请求。由于 Django 的跨站点请求伪造 (CSRF) 保护,我无法让它工作。

PUT 请求旨在允许未经身份验证的用户添加资源。

我考虑过/尝试过的:

  1. 禁用 CSRF——不可接受。API 与非 API 服务在同一个 Django 实例上运行。禁用 CSRF 保护风险太大。
  2. 使用X-Requested-With: XMLHttpRequestPUT 请求的标头(我控制客户端)。不起作用 - 我仍然收到 CSRF 错误。
  3. 在 PUT 视图上使用@crsf_exempt装饰器。如果可以的话,我会的——框架定义了一个类,而不是一个视图。

我目前最好的选择是自己编写 PUT 视图,而不使用 DRF 的 View 类。然后我可以@crsf_exempt成功使用装饰器。

我想使用 DRF 的 View 类——但看不到如何使用。你可以吗?

0 投票
1 回答
3600 浏览

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 帖子。

0 投票
1 回答
317 浏览

python - Django Rest Framework 使用 url 加载指定模型

是否可以使用通用 url 设置为 django 中的所有模型实现 django rest 接口?

因此,而不是每个模型配置:

更通用的加载类型:

使用允许系统生成模型并将其渲染到其余接口的东西。

0 投票
1 回答
11822 浏览

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/

0 投票
3 回答
2171 浏览

jsonp - 将 jsonp 与 django-rest-framework 一起使用

django rest 框架发布说明声称在 0.3.0 中添加了 JSONP 支持。我还在框架中找到了一个 JSONPRenderer 类。但是,我似乎找不到任何关于如何使用这个东西的文档......我对 jsonp 相当陌生。

有没有人成功地将 jsonp 与 django rest 框架一起使用?

0 投票
3 回答
50465 浏览

django - 如何禁用 django-rest-framework 的管理员风格的可浏览界面?

我正在使用django-rest-framework。它提供了一个很棒的 Django 管理风格的可浏览自文档 API。但是任何人都可以访问这些页面并使用该界面添加数据(POST)。我怎样才能禁用它?

0 投票
1 回答
1623 浏览

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 代码有什么问题。我找不到更多的例子。

服务器看起来不错,我可以在浏览器中发布数据。非常感谢。

0 投票
0 回答
342 浏览

facebook - 移动应用程序通过 REST 访问 Django 后端的 Facebook 身份验证

我正在开发一个基于 Titanium Mobile 的移动应用程序,并使用其FB 模块通过 FaceBook 对用户进行身份验证。现在,我们还将为这个使用Django Rest Framework实现的移动应用程序实现 Web 服务。

我想知道如何最好地安全地实现这一点,以便一旦用户通过 FaceBook 进行身份验证,移动应用程序也可以通过 Django 后端进行身份验证。

0 投票
1 回答
2941 浏览

python - “BlogPostResource”对象没有“请求”属性

我正在学习 Django REST Framework 并研究这个例子;

http://django-rest-framework.org/examples/blogpost.html

但是当我尝试打开时出现此错误http://localhost:8000/blog-post/

这些是我的示例文件:

资源.py

模型.py

网址.py

0 投票
2 回答
5327 浏览

django - Django Rest框架序列化程序排除深度为2的外键

我制作了一个将对象作为 json 数据返回的 api。我正在使用 django-rest-framework 及其序列化程序。使用资源 (ModelResource) 我排除了一些字段,例如名为“所有者”的属性。其中一个字段是其自身的外键。我想在 api 中显示这个字段(所以我使用 depth=2),但我想排除与我在返回对象中排除的字段相同的字段。有没有一种很好的方法来做到这一点(我已经尝试了几件事但没有想要的结果)。

这是我的(简化的)代码:在 models.py 中:

在资源.py 中:

并在用于返回对象的视图中返回:

在响应中,它省略了排除字段(正如我想要和预期的那样)。

但在字段父级中,父级 myobject 包含我要隐藏的所有字段。

我正在寻找一种方法来表明对于这个父对象,序列化程序应该使用相同的资源,或者将辅助字段添加到排除列表中......

如果我使用 depth =1,它只显示它是否有父级 ([]),如果没有,则显示 null,我确实需要至少知道父级的 ID。