
Nurik
11.03.2017
09:34:32

Sergey
11.03.2017
09:35:19
мне у них дико нравится визуализация алгоритмов

Nurik
11.03.2017
09:35:49
Для питона есть еще вот такое, почти для гуманитариев:
http://aliev.me/runestone/

F01134H
11.03.2017
11:12:27
Народ, стоит ли для REST юзать для каждого метода свой тип запроса (GET, PUT, POST, DELETE)? Или можно одним POST обойтись?

Google

F01134H
11.03.2017
11:12:51
ну или POST и GET

Nurik
11.03.2017
11:13:42
Конечно можно.

F01134H
11.03.2017
11:14:06
Да я знаю что можно)
Но с точки зрения реализации, как правильней?

Nurik
11.03.2017
11:14:51
Так это же стиль, а не паттерн(протокол). Можно как угодно) Главное чтобы удобно было.
Ну я так думаю во всяком случае.

Sergey
11.03.2017
11:15:57
то есть что бы с точки зрения клиента было проще имплементить
если ты будешь юзать только POST
у тебя выйдет PRC
с методами вида
POST /addSomething
POST /removeSomething?id=1

Google

Sergey
11.03.2017
11:17:13
если бы мне как мобильщику/фронтэндщику дали такую апишку...
Забуду сразу про все мои крутые фреймворки для работы с сетью и абстракции над апишками. Надо будет разбираться как чего делать.
допустим если писать клиент на каком ангуляре - я мог бы взять ngResource и не париться, а теперь не могу
придется ваять велосипед
в итоге KISS не соблюдаем. Интерфейс взаимодействия выходит сложным
но если чуваки которые пилят клиенты это ты или сидят рядом - сами договаривайтесь
профит от REST в том что соглашения по работе с ресурсами продиктованы на уровне спецификации http и чуть проще выходит в плане реализации клиентов.
меньше велосипедов - выше портируемость

andrew
11.03.2017
11:21:08
Рест подразумевает разные типы запросов

F01134H
11.03.2017
11:22:02

Sergey
11.03.2017
11:22:06
Рест подразумевает разные типы запросов
не совсем. Конкретно rest подразумевает:
- ресурсы можно идентифицировать (в HTTP для этого URI)
- с ресурсами мы работаем при помощи их представления (в HTTP это заголовки + тело + verb)
- чето там еще
- HATEOAS

F01134H
11.03.2017
11:22:25
такая тавтология

Sergey
11.03.2017
11:22:51
такая тавтология
короч. Если "твои клиенты" сидят не рядом с тобой - делай нормальную апишку
почему ты не хочешь юзать PUT/DELETE?

F01134H
11.03.2017
11:23:10
Потому что это сложно для понимания
нужно как можно более простое апи сделать

andrew
11.03.2017
11:23:17
Норм

Sergey
11.03.2017
11:23:25

Google

andrew
11.03.2017
11:23:33
Делит - удаляем

Sergey
11.03.2017
11:23:53
https://github.com/Microsoft/api-guidelines/blob/master/Guidelines.md#74-supported-methods

F01134H
11.03.2017
11:24:02

Sergey
11.03.2017
11:24:12
Делит - удаляем
PUT - создаем именованные ресурсы или заменяем, POST - все остальное

F01134H
11.03.2017
11:24:16
им не надо вот это вот типы запросов и т.д.

Sergey
11.03.2017
11:24:26

andrew
11.03.2017
11:24:27
Гет получаем

F01134H
11.03.2017
11:24:27
им надо просто метод, который возвращает результат

andrew
11.03.2017
11:24:44
Это не рест знач

Sergey
11.03.2017
11:24:44
Гет получаем
все намного проще - надо просто выучить слово "идемпотентность"
Это не рест знач
и в этом нет ничего плохого. Почти никто rest не делает полноценный

andrew
11.03.2017
11:25:08
Я знаю это слово оно к пост и пут

F01134H
11.03.2017
11:25:12

andrew
11.03.2017
11:25:12
Относится

Sergey
11.03.2017
11:25:21

F01134H
11.03.2017
11:25:29
Да

Sergey
11.03.2017
11:25:32
Нет)

F01134H
11.03.2017
11:25:36
это куда неочевиднее

Sergey
11.03.2017
11:25:36
пруф
это куда неочевиднее
ну да... потому придумаю свой велосипед который уж точно никто не знает и придется разбираться

Google

Nurik
11.03.2017
11:26:19

Sergey
11.03.2017
11:26:38
возьми какой apiary, накидай им доку
и пусть балуются
там даже кодогенерация с примерами есть

F01134H
11.03.2017
11:27:19
Я делаю апи для людей, а не для внутренней разработки
Даже у апи фейсбука работа с апи ограничена GET и POST

Sergey
11.03.2017
11:27:40

F01134H
11.03.2017
11:27:44
да
хотя да

Admin
ERROR: S client not available

F01134H
11.03.2017
11:28:48
нашел с delete
ну ладно, буду делать так значит

Sergey
11.03.2017
11:29:11
https://github.com/Microsoft/api-guidelines/blob/master/Guidelines.md#74-supported-methods
может поможет тебе делать норм апишки
только не юзай patch
лучше post вместо него
его нет в стандарте HTTP и незачем его тянуть

Nurik
11.03.2017
11:31:13
@F01134H А на чём будешь писать API ? Фреймворк ?

F01134H
11.03.2017
11:31:17
Спасибо)

Google

F01134H
11.03.2017
11:31:24
но я не буду какие то левые пакеты тянуть. Рест сам по себе простой, сам сделаю

Sergey
11.03.2017
11:32:03
юзай готовое

F01134H
11.03.2017
11:32:14
не

andrew
11.03.2017
11:32:21
Мож сразу на голом пшп
На асме

F01134H
11.03.2017
11:32:42
у лары из коробки хорошая работа с рест апи.

Sergey
11.03.2017
11:32:56
называется symfony/routing)

F01134H
11.03.2017
11:33:06
да
и я не вижу причин что то лишнее туда пихать
там даже с типами запроса работать просто

andrew
11.03.2017
11:33:26
Может сам будешь ловить тсп пакеты и передавать инструкции процессору

Sergey
11.03.2017
11:33:44
сколько ресурсов будет

F01134H
11.03.2017
11:33:56
пока что
вся апишка - 4 метода)

Sergey
11.03.2017
11:34:14
аа... а апишка тупо на хранение инфы?

F01134H
11.03.2017
11:34:17
и даже в далекой перспективе вырастет наверное максимум до 20

Sergey
11.03.2017
11:34:56
я бы поленился даже апишку писать и сказал бы юзать firebase... но может быть в твоем случае не подойдет. слишком мало деталей

F01134H
11.03.2017
11:35:08
ну там внутри будет кролик, который будет рассылать воркерам данные, которые будут работать с апи мессенджеров. И где-то между этим будет хранение, да)

Sergey
11.03.2017
11:35:30
ясненько

Nurik
11.03.2017
11:38:02
Я вот, на yii2 решил писать своё API. API для таксопарка, учет топлива и так далее. Полная ж. Не советую Yii2 для REST кароче.