@proGO

Страница 492 из 1674
Roman
20.02.2017
17:51:27
А зачем?

Aleksandr
20.02.2017
17:51:41
и причем тут вообще кука?

Google
Aleksandr
20.02.2017
17:52:08
я же сторонний клиент, у меня нет кук auth-сервера

Daniel
20.02.2017
17:52:20
А что мне это даст?
база будет не нужна

Phil
20.02.2017
17:52:45
база будет не нужна
Выписывать этот шифрованнывй токен кто будет?

Daniel
20.02.2017
17:53:08
эммм

мы про OAuth? у тебя есть сайт, который хочет авторизовать пользователя через другой сайт? вот этот твой сайт и выпишет

Phil
20.02.2017
17:55:18
У меня есть публичный API. К нему ходят какие-то приложения
И начинают они с того, что ломятся к серверу авторизации моего API и просят: "Фил, дай мне токен"

Denis
20.02.2017
17:57:23
Сервер аутх

Phil
20.02.2017
17:57:30
И начинают они с того, что ломятся к серверу авторизации моего API и просят: "Фил, дай мне токен"
А мой сервер авторизации открывает большую пыльную книжку приложений, водит по ней пальцем и отвечает: "А вот ваш билетик и билетик обновления" и записывает билетики в два разныъ журнальчика

Denis
20.02.2017
17:57:47
Кстати Фил , тебе точно нужен север аутх а не клиент ?

Denis
20.02.2017
18:00:07
Ну чтобы понимать всю задачу, для чего именно тебе аутх?

Google
Phil
20.02.2017
18:00:44
Ну чтобы понимать всю задачу, для чего именно тебе аутх?
Для начала унифицировано авторизовать приложение в моём API

Пусть это будет не аутх, флоу от этого не поменяется. Тем или иным способом клиент показывает логин/пароль, или там какой-то пин, или ещё какой код - и получает билетик доступа к API

Phil
20.02.2017
18:05:21
Разве? Всегда думал что это наоборот идемпотентна операция
Это так написано и задумано в идеологии вот этих названий. Но так не бывает. Сколько спек не читаю - это всегда проверка. Нельзя просто так взять и снихуя перезаписать сверху

Dmitry
20.02.2017
18:05:41
Эм.. вообще можно

Ну да ладно :-) нет так нет

Phil
20.02.2017
18:06:09
Эм.. вообще можно
Но все спеки вокруг этого так не считают. И я честно говоря тоже не понимаю какие операции в жизни так могут сделать

Dmitry
20.02.2017
18:06:42
Пут /билл/4464 в статус пейд

Хоть 400440 раз его в пейд переведи

Например

Phil
20.02.2017
18:07:19
Ну да ладно :-) нет так нет
Я кстати привел пример RFC 7592 - там апдейт клиента делается через PUT, а проверка на совпадение нескольких полей обязательна. И ещё одного игнор

Dmitry
20.02.2017
18:07:40
Ну, бот с ним

Dmitry
20.02.2017
18:09:05
Патч для частичного, пут для полного

Dmitry
20.02.2017
18:09:13
Вроде по ресту там все четко

Правда не факт что рфц этот про рест

Aleksandr
20.02.2017
18:10:23
Dmitry
20.02.2017
18:10:51
Но хттп вроде просит всю неидемпотентщину совать в пост, потому как остальные запросы могут быть перепосланы и результаты их закешированы

Google
Dmitry
20.02.2017
18:10:51
(но это не точно)

Phil
20.02.2017
18:10:52
что надо проверить? я открыл спеку, но сразу вычленить трудно
2.2 The client MUST include its "client_id" field in the request, and it MUST be the same as its currently issued client identifier. If the client includes the "client_secret" field in the request, the value of this field MUST match the currently issued client secret for that client. The client MUST NOT be allowed to overwrite its existing client secret with its own chosen value.

Aleksandr
20.02.2017
18:12:43
то есть update ...... where client_id = ..... если updated row нет, то отдаем 400 и клиент сам виноват, что невалидный id шлет

Aleksandr
20.02.2017
18:13:12
ну добавь это все в один запрос

Dmitry
20.02.2017
18:13:51
Селектить только не обязательно явно, можно в одном апдейте с развесистфм where сделать.

Интересно, во вронгодб такой апдейт атомарен?

Phil
20.02.2017
18:13:58
то есть update ...... where client_id = ..... если updated row нет, то отдаем 400 и клиент сам виноват, что невалидный id шлет
гыгы :) или апдейтим чужой :) но client_id проверяетс я прсото - ты его в URI дублируешь. и registration_token на него выписан. тут ладно

Aleksandr
20.02.2017
18:14:56
гыгы :) или апдейтим чужой :) но client_id проверяетс я прсото - ты его в URI дублируешь. и registration_token на него выписан. тут ладно
зачем? ты запрос составь так, чтобы не апдейтился чужой. просто нам не нужен select + update, если мы можем это в одном запросе сделать без транзакций

Roman
20.02.2017
18:43:45
Я наверно как затычка в бочке сейчас, но в Тарантуле делаешь upsert, который умеет инкрементировать или заменять поле. Атомарно и никаких транзакций. Но это для счетчиков. Для остального есть транзакции.

Dmitry
20.02.2017
18:45:08
Заменять поле для счетчиков?

Dmitry
20.02.2017
18:45:12
Зе фак

Это для чего угодно

Roman
20.02.2017
18:46:13
Ну например апдейт рейтинга по ключу объекта

Denis
20.02.2017
20:28:51
Дмитрий, наверное о том, что обновление поля почти в любой бд атомик

Denis
20.02.2017
20:40:23
Аналогично, в любой acid бд почти все операции атомарны

Или даже не в acid

Вон в монге над документом операция атомарны

Google
Denis
20.02.2017
20:41:24
Суть атомарности в том что нельзя сделать частично вставку или частичное изменения

Либо все либо ничего

Или инсерт в котором вставилась только половина данных

Roman
20.02.2017
20:50:18
Я не вижу примеров инкремента для MySQL

Везде SELECT + UPDATE

http://dba.stackexchange.com/questions/61603/how-to-query-and-increase-a-value-counter-in-a-thread-safe-way-avoid-race-co

Admin
ERROR: S client not available

Denis
20.02.2017
20:56:27
Конкретно это хз, не эксперт в мускул

Dmitry
20.02.2017
20:56:46
Я не вижу примеров инкремента для MySQL
update hues set hue = hue +1 where id = 1 так нельзя чтоль?

Denis
20.02.2017
20:57:26
Нус

Dmitry
20.02.2017
20:57:48
Вон в монге над документом операция атомарны
да, но атомарна ли операция update({},{}) ? т.е. между тем как она найдет документ и модификацией, может ли рейс быть?

Roman
20.02.2017
20:59:57
Dmitry
20.02.2017
21:00:05
сек

по "счастливой" случайности у меня есть mysql

mysql> update test set txt = txt +1 where id = 1; Query OK, 1 row affected (0.09 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from test; +----+------+ | id | txt | +----+------+ | 1 | 2 | +----+------+ 1 row in set (0.00 sec)

Roman
20.02.2017
21:14:28
Ок. Интересно, почему у чувака не работало?

Это с какой то версии появилось?

Vladislav
20.02.2017
21:15:08
года 3 назад работало

Roman
20.02.2017
21:15:51
Блин, там чувак написал же в ответе

>The update statements works perfectly fine without the select before!

Google
Dmitry
20.02.2017
21:22:26
жалко тупой мускуэль не умеет returning *

ну, какбе...

и хрен с ним

Denis
20.02.2017
21:44:49
И тут появляется постгря

Dmitry
20.02.2017
21:53:56
Не моя проблема что он не умеет :) и надеюсь долго мы с ним еще не встретимся

abc
21.02.2017
06:22:55
парни. хочу хранить изображения в BoltDB. Сейчас пока база 50 мб все окей. Интересует кто пользовал BoltDB для того же чего и я. Какие камни ?

Roman
21.02.2017
06:49:11
Про веб-разработку, пусть не смущает слово PHP :) https://habrahabr.ru/post/322170/

dypa
21.02.2017
06:54:50
Про веб-разработку, пусть не смущает слово PHP :) https://habrahabr.ru/post/322170/
автор в пхп не разобрался но удивляет не он, а все те люди которые ставят +1 статье

Igor
21.02.2017
06:58:20
Да он просто стебется над хипстотами. Можно PHP заменить на чтоугодно

Aleksandr
21.02.2017
07:00:00
Да он просто стебется над хипстотами. Можно PHP заменить на чтоугодно
именно. удивительны те, кто автора воспринимает всерьез

dypa
21.02.2017
07:06:14
Да он просто стебется над хипстотами. Можно PHP заменить на чтоугодно
стеб был в статье о js в 2016 году, а тут сплошная глупость и попытка схватить хайп на ровном месте.

Aleksandr
21.02.2017
07:07:32
Что за статья?
тремя комментами выше

Andrew
21.02.2017
07:09:37
Что за статья?
https://habrahabr.ru/post/312022/

Igor
21.02.2017
07:10:00
К несчастью, в отличие от PHP, про js правда. Потому так и смешно

dypa
21.02.2017
07:13:19
Что за статья?
https://m.habrahabr.ru/post/312022/

Страница 492 из 1674