asis

Скріншот програми:
asis
Дані програми:
Версія: 0.2.1
Дата завантаження: 20 Feb 15
Розробник: Dan Lecocq
Ліцензія: Безкоштовно
Популярність: 17

Rating: 4.0/5 (Total Votes: 1)

ASIS є легка утиліта Python для обслуговування як є документ (що містять заголовки і зміст) по протоколу HTTP.
Коли справа доходить до модульного тестування інструментів, які отримають HTTP ресурси, ми вирішили, що ми хотіли б мати можливість легко зберігати заздалегідь певні відповіді, а потім служити їм з сервера в одному процесі, як ми біжимо ці тести. Ні мавпа виправлення, немає інфраструктури (наприклад, кешування проксі-сервер).
Слід зазначити, що якщо ви хочете, щоб захопити запити від існуючих послуг, а потім відтворювати їх, проект відеомагнітофон був портований на декількох мовах і дуже корисно.
Що таке?
Twisted поставляється з функцією називається-відбуває, натхненний Apache. Але, хто хоче включити Вита як залежність?
Це засновано на пляшці, і, таким чином, підтримує ряд WSGI движків (у тому числі Twisted і gevent), і призначений, щоб бути легким. Як є документ, в якому обидві верхні і зміст для відповіді HTTP зберігаються:
HTTP / 1.0 200 OK
Content-Length: 137
Content-Type: текст / HTML

І NBSP;
І NBSP; <назва> Основний тест Сторінка
І NBSP;
І NBSP; <тіло>
І NBSP;

Привіт, я тестова сторінка


І NBSP;

Зверніть увагу, що для цього потрібно тільки символ нового рядка для заголовків - в повернення каретки додаються автоматично для зручності.
Установка
Простіше простого:
Судо пункт встановити ASIS
Або для тих, хто воліє від джерела:
Git клон https://github.com/seomoz/asis
CD ASIS && команда sudo пітона setup.py установки
Використання
Ви можете запустити сервер ASIS відносно легко:
імпорт ASIS
# Подавати файли, що зберігаються в 'Foo /' на порту 8080
Сервер = asis.Server ('Foo', 8080)
server.run ()
...
server.stop ()
Крім того, він може бути використаний в контекстно-менеджера моди:
імпорт ASIS
запитів на імпорт
з asis.Server ('Foo') в якості сервера:
І NBSP; requests.get ('HTTP: // локальний: 8080 / Foo / bar.asis')
Там також утиліта командного рядка включені виключно для зручності для обслуговування ASIS файли як окремого сервера, що особливо корисно для бачачи ці файли через завиток або браузер:
# Подавати файли з 'Foo /' на порту 8080
ASIS-сервер Foo --port 8080
# Те ж саме, використовуючи gevent і бути багатослівним
ASIS-сервер Foo --port 8080 --server gevent --verbose
дзвони і свистки
Є кілька особливостей, які можуть знадобитися, щоб скористатися:
Content-Encoding
Якщо ви вказуєте заголовок Content-Encoding або як Gzip або викачати, однотонні вміст пам'яті у файлі стискаються і передаються по дроту, що шлях. У цих випадках, ви можете залишити Content-Length 0, а справжня довжина контент (після компресії) буде відправлено на своєму місці. Наприклад, наступний відправляється як зміст GZIP-стислих правильно браузері:
HTTP / 1.0 200 OK
Content-Length: 0
Content-Type: текст / рівнина
Content-Encoding: GZIP
Привіт, світ!
Кодування
Якщо включити кодування в заголовку вашого Content-Type, то ваш контент буде інтерпретуватися як UTF-8 на диску, а потім кодується у відповідному кодуванні. Ідея полягає в тому, щоб допомогти процесу редагування, так що ви не повинні явно зберегти приклади їх заяви набір символів. Як зміни в Content-Encoding, заголовок Content-Length перераховується, щоб бути правильним, як тільки перетворення завершено.
Режими
За замовчуванням, сервер запущений з сервером gevent, і це почалося у фоновому зеленою ниткою, і він повинен бути готовий обслуговувати запити, як тільки Run () повертає.
Крім того, сервер може бути запущений в двох інших режимах, виделки та блоку. Якщо вилка, то він буде працювати сервер в окремому процесі, і він все ще працює і як менеджер контекстного і після виклику Run (). Якщо вибраний блок, то він працює в блокирующем чином. Що наприклад:
# Запустити його в окремому процесі
з asis.Server ('Foo', порт = 8080, режим = 'вилки'):
І NBSP; # Зробіть кілька запитів
І NBSP; ...
Приклади та тести
В ось ряд прикладів, як є документи, і test.py може бути запущена безпосередньо переконатися, що вони передаються правильно:
./test.py
Він також дає приклад того, як можна включити його в свій юніт-тестів.
внесок
. Питання, коментарі, ідеї завжди вітаються

Вимоги

  • Python

Схожі програми

Perl Shell
Perl Shell

3 Jun 15

CLIcompanion
CLIcompanion

14 Apr 15

PHP Shell
PHP Shell

15 Apr 15

Інші програми розробника Dan Lecocq

aws-trade-in
aws-trade-in

20 Feb 15

reppy
reppy

11 May 15

asis

Коментар не знайдено
додати коментар
Включіть картинки!
Пошук за категоріями