Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django Rest框架块从外部源获取请求_Django_Django Rest Framework - Fatal编程技术网

Django Rest框架块从外部源获取请求

Django Rest框架块从外部源获取请求,django,django-rest-framework,Django,Django Rest Framework,我有一个Django Rest框架API,它要求阻止来自外部源的GET请求,类似于CORS阻止所有非安全谓词的方式。我需要做的是,当GET请求从我的域以外的其他地方传入时,我需要返回403响应 从我所读到的关于CORS的内容来看,它不能阻止GET请求,而且我没有看到任何其他内置的DRF选项。我试图查看请求对象来检查原点,但也没有看到。有什么建议吗?您可以在virtual env installrequests软件包中尝试请求 pip安装请求 获取当前汇率的示例获取请求 import reques

我有一个Django Rest框架API,它要求阻止来自外部源的GET请求,类似于CORS阻止所有非安全谓词的方式。我需要做的是,当GET请求从我的域以外的其他地方传入时,我需要返回403响应


从我所读到的关于CORS的内容来看,它不能阻止GET请求,而且我没有看到任何其他内置的DRF选项。我试图查看
请求
对象来检查原点,但也没有看到。有什么建议吗?

您可以在virtual env installrequests软件包中尝试请求

pip安装请求

获取当前汇率的示例获取请求

import requests
currencies_out = requests.get(
        str.format('https://openexchangerates.org/api/latest.json?app_id={}', 'e034f1ad6bb44668b6a5c815fe244455'))
if currencies_out.status_code == 200:
     currencies = currencies_out.json()

使用了请求或请求DRF提供的请求对象。我不是试图发出请求,而是获取API接收到的请求源。你能试试下面的回答吗?你现在如何阻止跨源请求?你是否使用
django cors headers
?它有
CORS\u ALLOW\u METHODS
选项,可以设置为空。@hoefling不幸的是,GET请求通常不预先触发,因此它不会触发CORS检查