Django и DRF, IP-лимит для запроса

Функция JavaScript на стороне клиента для загрузки блога WAV:

function upload(blob) {
  var xhr=new XMLHttpRequest();
  xhr.onload=function(e) {
      if(this.readyState === 4) {
          console.log("Server returned: ",e.target.responseText);
      }
  };
  var fd=new FormData();
  fd.append("that_random_filename.wav",blob);
  xhr.open("POST","<url>",true);
  xhr.send(fd);
}

PHP-файл upload_wav.php:

<?php
// get the temporary name that PHP gave to the uploaded file
$tmp_filename=$_FILES["that_random_filename.wav"]["tmp_name"];
// rename the temporary file (because PHP deletes the file as soon as it's done with it)
rename($tmp_filename,"/tmp/uploaded_audio.wav");
?>

, после которого вы можете воспроизвести файл /tmp/uploaded_audio.wav.

Но помните! /tmp/uploaded_audio.wav был создан пользователем www-data и (по умолчанию PHP) не читается пользователем. Чтобы автоматизировать добавление соответствующих разрешений, добавьте строку

chmod("/tmp/uploaded_audio.wav",0755);

в конец PHP (до конечного тега PHP ?>).

Надеюсь, что это поможет.

0
задан Anjaneyulu Batta 17 January 2019 в 07:37
поделиться

1 ответ

Да, у нас есть концепция под названием «Throttling» в структуре отдыха django. Дроссели указывают временное состояние и используются для управления скоростью запросов, которые клиенты могут направлять в API.

Ссылка: https://www.django-rest-framework.org/api-guide/throttling/

0
ответ дан Anjaneyulu Batta 17 January 2019 в 07:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: