Могу ли я замедлить Джанго

Простой вопрос на самом деле

<code>./manage.py runserver
</code>

Могу ли я замедлитьlocalhost:8000 на моей машине для разработки, чтобы я мог имитировать загрузку файлов и работать над внешним видом загрузки ajax?

 Marcin24 апр. 2012 г., 16:02
Запустить его в виртуализированной среде, которая позволяет контролировать скорость выполнения?
 jpic24 апр. 2012 г., 16:43
Вы можете загрузить файлы большего размера.

Ответы на вопрос(6)

ipfw ограничить пропускную способность на определенных портах:

  sudo ipfw pipe 1 config bw 1Bytes/s delay 100ms
  sudo ipfw add 1 pipe 1 src-port 8000

Не забудьте удалить его, когда он вам больше не нужен:

sudo ipfw delete 1

Кредит: ягуарцы

Для OSX также есть бесплатное приложение, которое позволит это:

http://slowyapp.com/

 28 июн. 2014 г., 23:37
Так что, если я тестирую веб-страницу на моем Mac изlocalhost Сервер Django на том же, это будет имитировать отложенную загрузку страницы?
 24 апр. 2012 г., 19:27
Мне нравится этот метод в целом, чтобы проверить загрузку страниц для медленных посетителей. Обработка DOM выглядит очень по-разному, когда элементы постоянно загружаются ...!

динение и может имитировать все виды сетевых условий.

http://www.charlesproxy.com/

Решение Вопроса

где вы хотите имитировать такое, вы могли бы просто спать?

from time import sleep
sleep(500)
 30 апр. 2018 г., 20:00
Просто предупреждение, параметр для сна в секундах. Так что 500 очень медленный: D
 18 мая 2018 г., 23:46
Но вы можете сделать это во всех видах?
 24 апр. 2012 г., 17:16
Это мой любимый способ проверки тайм-аутов HttpRequest на стороне клиента.
 Sevenearths24 апр. 2012 г., 17:27
Отличная идея. Мне это нравится!

настраиваемый обработчик загрузки или подкласс текущего обработчика загрузки, чтобы в основном замедлятьсяreceive_data_chunk() метод в этом. Или установите точку останова pdb внутриreceive_data_chunk() и вручную продолжить загрузку. Или даже проще, попробуйте загрузить большой файл.

Используйте обработчик медленной загрузки файлов из django-gubbins:

import time
from django.core.files.uploadhandler import FileUploadHandler

class SlowFileUploadHandler(FileUploadHandler):
    """
    This is an implementation of the Django file upload handler which will
    sleep between processing chunks in order to simulate a slow upload. This
    is intended for development when creating features such as an AJAXy
    file upload progress bar, as uploading to a local process is often too
    quick.
    """
    def receive_data_chunk(self, raw_data, start):
        time.sleep(2)
        return raw_data

    def file_complete(self, file_size):
        return None

Вы можете включить это глобально, добавив его в:

FILE_UPLOAD_HANDLERS = (
    "myapp.files.SlowFileUploadHandler",
    "django.core.files.uploadhandler.MemoryFileUploadHandler",
    "django.core.files.uploadhandler.TemporaryFileUploadHandler",
)

Или включите его для конкретного запроса:

request.upload_handlers.insert(0, SlowFileUploadHandler())

Убедитесь, что запрос исключен из проверки CSRF, как указано наhttps://docs.djangoproject.com/en/dev/topics/http/file-uploads/#id1

Если вы хотите замедлить работу всех запросов, очень простой способ - использовать ngrokhttps://ngrok.com/ , Используйте ngrok url для запросов, затем подключитесь к vpn в другой стране. Это сделает ваши запросы очень медленными.

 Sevenearths19 апр. 2018 г., 15:06
Мне нравится нгрок. Это потрясающе

Ваш ответ на вопрос