Giter VIP home page Giter VIP logo

homework_69's Introduction

Занятие #69. Домашнее задание

Задание 1

Напишите приложение с API, которое имеет 4 точки входа:

  • /add/
  • /subtract/
  • /multiply/
  • /divide/

На каждую точку входа можно передать два числа: A и B.

Данные будут передаваться в формате:

{ "A": 1234, "B": 4567 }

Точка входа должна проверить, что входные данные являются числами, и выполнить действие, соответствующее её названию: add - сложить, subtract - вычесть, multiply - умножить, divide - разделить. Пример ответа для данных выше, при отправке на вход /add/:

{ "answer": 5801 }

Если данные не являются числами или возникает ошибка во время расчёта, точка входа должна вернуть ответ со статусом 400 BadRequest и сообщением об ошибке. Пример ответа с ошибкой:

{ "error": "Division by zero!" } ##Задание 2

  • Напишите клиент для приложения из задания 1. Добавьте в проект приложение webapp с одним представлением Index, которое рендерит пустую страницу с двумя инпутами для чисел, 4 кнопками для действий и блоком для вывода результата.

  • Каждой кнопке соответствует одно из действий: сложение, вычитание, умножение, деление. По клику на них должны отправляться AJAX-запросы на соответствующие точки входа в API. После получения ответа, выведите его в блоке для ответа и подсветите зелёным цветом. Если произошла ошибка, выведите её в блоке для ответа, и подсветите красным.

  • Бонус 2 (+0.2 балла). Используйте одну общую функцию для обработки кликов на все кнопки. Используйте дата-атрибуты на кнопках, чтобы определять точку входа API, куда нужно послать запрос. Можно сделать кнопки из ссылок и хранить адрес точки входа прямо в href.

homework_69's People

Contributors

mollionline avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.