
Marat
27.06.2018
18:36:15
либо корс отключай, либо корректно эти методы вызывай

Sergey
27.06.2018
18:36:23

Mikhail
27.06.2018
18:36:25
да, нужно его выкидывать

Tolegen
27.06.2018
18:36:32

Google

Mikhail
27.06.2018
18:36:37
посты работает, геты работаеют

Митко Соловец?
27.06.2018
18:36:50

Georgy
27.06.2018
18:36:58
что ты имеешь в виду?
Ну тебе нужно масштабировать горизонтально приложение, а там есть стейтфул синглтоны

Митко Соловец?
27.06.2018
18:37:06
вообще-то нет
код писать надо без состояния

Mikhail
27.06.2018
18:37:23

Митко Соловец?
27.06.2018
18:37:30
а если ты его завел - ССЗБ

Alexander
27.06.2018
18:37:36

Берял
27.06.2018
18:37:38

Митко Соловец?
27.06.2018
18:37:40
используй внешние кэши

Mikhail
27.06.2018
18:37:42
override fun addCorsMappings(registry: CorsRegistry?) {
registry!!.addMapping("/**").allowedOrigins("*")
}

Google

Tolegen
27.06.2018
18:37:53

Митко Соловец?
27.06.2018
18:37:53
не взлетает?

Mikhail
27.06.2018
18:38:02
нет

Georgy
27.06.2018
18:38:02

Митко Соловец?
27.06.2018
18:38:03
у тебя Котлин?

Mikhail
27.06.2018
18:38:08
угу
это как-то мешает?

Alexander
27.06.2018
18:38:27

Митко Соловец?
27.06.2018
18:38:43

Tolegen
27.06.2018
18:38:51
В общем вопрос масштабирования - это вопрос сбоку.

Mikhail
27.06.2018
18:39:04
верный конфиг
причем на тестовом сервере работает, а на проде - нет

Митко Соловец?
27.06.2018
18:39:30
/**

Tolegen
27.06.2018
18:40:01

Mikhail
27.06.2018
18:40:09
если дергать этот delete из мобильного приложения, т.е. не посылая хедеры типа Origin, то работает

Tolegen
27.06.2018
18:40:11
Весьма типичная проблема.

Marat
27.06.2018
18:40:18

Tolegen
27.06.2018
18:40:26
Сидишь ковыряешь, а что же там не так. Вроде все по доке сделал.

Митко Соловец?
27.06.2018
18:40:35
ща

Google

Митко Соловец?
27.06.2018
18:40:37
1 момент

Marat
27.06.2018
18:40:58
можешь вообще его рубануть нафиг, если не нужен:
.cors().disable()

Sergey
27.06.2018
18:41:04

Georgy
27.06.2018
18:41:13

Mikhail
27.06.2018
18:41:47

Митко Соловец?
27.06.2018
18:42:25
это и плюс и минус одновременно

Georgy
27.06.2018
18:42:41

Митко Соловец?
27.06.2018
18:42:46
попробуй так

Marat
27.06.2018
18:42:50
а если нужен?
тогда правильные ориджины пропиши, и у тебя сервис через балансер наружу торчит?

Mikhail
27.06.2018
18:43:13

Marat
27.06.2018
18:43:32
X-Origin-From пробрасывается корректный?
или в какие там хедеры это упаковывается (не помню уже)

Mikhail
27.06.2018
18:44:41
я сейчас пошел на сервак и локально выполнил запрос, та же херня, лоадбалансер никак не мешает

Marat
27.06.2018
18:45:40

Sergey
27.06.2018
18:46:22
Кароч, ответа я не получил - резюмирую. DI контейнеры по подходам можно разделить на два типа - либо они инфу о том что нужно инжектить ищут в инжект-оунерах (autowired), либо дают какой то DSL для сборки конфигурации (Spring XML, Spring Java). Третьего не дано - где то эта инфу контейнер должен прочитать: я не видел никаких контейнеров которые не относятся к одной из этих двух категорий. Первый путь все каплит к чертям, второй не имеет никакого смысла, лишний оверхед. Контейнер не нужен для SOLID кода.

Mikhail
27.06.2018
18:46:46
/**
это куда писать? registry!!.addMapping("/**").allowedOrigins("*")

Митко Соловец?
27.06.2018
18:48:49

Google

Tolegen
27.06.2018
18:49:48
Это гадание на кофейной гуще с конфигом спринга?)
Убери то, попробуй так..

Mikhail
27.06.2018
18:50:08
убери allowedOrigins
по идее это никак не поможет: `The special value "*" allows all domains.
By default, all origins are allowed`

Tolegen
27.06.2018
18:50:09
Вот так и работаем со спрингом.

Mikhail
27.06.2018
18:51:11

Митко Соловец?
27.06.2018
18:51:19

Marat
27.06.2018
18:51:22
указан
Хм, тогда хз, что-то с паттерн-матчингом не то, можно попробовать подебажить и посмотреть, че он пытается сравнить и с каким шаблоном

Tolegen
27.06.2018
18:51:27
Весь холивар. При этом люди продолжают говорить, что со спрингом все в порядке и даёт он больше, чем отнимает (вот тут довольно спорный момент).

Admin
ERROR: S client not available

Mikhail
27.06.2018
18:52:16
а, котлиновская штука

Митко Соловец?
27.06.2018
18:52:31
registry!!
что делает?

Mikhail
27.06.2018
18:52:40
говорит компилятору, что там не null

Marat
27.06.2018
18:53:14
Спринг-секурити какие-то другие люди писали, его апи сильно отличается от остального фреймворка

Konstantin
27.06.2018
18:53:45
забавно, почему бы просто не писать без nullable (?)

Tolegen
27.06.2018
18:54:40
через балансер
А что ж вы там все и не разруливаете? На уровне балансера/внешнего к прикладу сервера? У нас оно так и сделано. К нам приходит только проверенный запрос от внешнего Apache.

Митко Соловец?
27.06.2018
18:55:27
вроде все правильно

Google

Митко Соловец?
27.06.2018
18:55:38
вопрос, а нет ли других фильтров?
корсовых в проекте?
зацепка - почему только делит не отрабатывает да еще и на проде

Mikhail
27.06.2018
18:56:05
ок, что прописать в nginx, чтобы он дропнул лишние хедеры и сам отвечал на OPTIONS запросы?
есть еще пара фильтров, как они могут повлиять?

Tolegen
27.06.2018
18:57:26

Митко Соловец?
27.06.2018
18:58:04
я кода не вижу всего

Mikhail
27.06.2018
18:58:40
на стейдже же работает, есть фильтр авторизации

Митко Соловец?
27.06.2018
18:58:55
на стэйдже тоже энджинкс?

Mikhail
27.06.2018
18:58:57
есть интерсептор, который добавляет метадату запросу
да

Митко Соловец?
27.06.2018
18:59:23
allowedHeaders позволяет указать разрешенные хэдеры


Sergey
27.06.2018
18:59:24
Кароч, ответа я не получил - резюмирую. DI контейнеры по подходам можно разделить на два типа - либо они инфу о том что нужно инжектить ищут в инжект-оунерах (autowired), либо дают какой то DSL для сборки конфигурации (Spring XML, Spring Java). Третьего не дано - где то эта инфу контейнер должен прочитать: я не видел никаких контейнеров которые не относятся к одной из этих двух категорий. Первый путь все каплит к чертям, второй не имеет никакого смысла, лишний оверхед. Контейнер не нужен для SOLID кода.
Далее - вкрадце.
EE подход (Сервисы обменивающиеся DTO) - говно, из-за лютого темпорал каплинга и слабой сплоченности методов внутри сервисов. Исключение - микросервисы.
Runtime-retention аннотации - говно. В отличие от класса в коде, аннотация связана с исполняющим кодом неочевидно. Они создают иллюзию простоты, типа мы код меньше пишем, на самом деле результат с точки зрения поддерживаемости может быть непредсказуем. Они могут и скаплить все нахрен, сломать инкапсуляцию, SOLID похерить. Дебажить муторно. Разрабатывать действительно быстрее, но поддерживать - нет.
Инфраструктура Spring, это наверное единственный условно позитивный момент. Почему только эту инфраструктуру надо было разукрашивать голимой магией, не особо понятно. Но да, есть кошерные вещи, типа того же реактора.
Аргументировать не вижу смысла, вам все равно смотрю неинтересно. Но не говорите мне потом что это я неконструктивен.


Mikhail
27.06.2018
18:59:34
конфиг отличается только путями к базе
Далее - вкрадце.
EE подход (Сервисы обменивающиеся DTO) - говно, из-за лютого темпорал каплинга и слабой сплоченности методов внутри сервисов. Исключение - микросервисы.
Runtime-retention аннотации - говно. В отличие от класса в коде, аннотация связана с исполняющим кодом неочевидно. Они создают иллюзию простоты, типа мы код меньше пишем, на самом деле результат с точки зрения поддерживаемости может быть непредсказуем. Они могут и скаплить все нахрен, сломать инкапсуляцию, SOLID похерить. Дебажить муторно. Разрабатывать действительно быстрее, но поддерживать - нет.
Инфраструктура Spring, это наверное единственный условно позитивный момент. Почему только эту инфраструктуру надо было разукрашивать голимой магией, не особо понятно. Но да, есть кошерные вещи, типа того же реактора.
Аргументировать не вижу смысла, вам все равно смотрю неинтересно. Но не говорите мне потом что это я неконструктивен.
а что в реакторе хорошего?


Митко Соловец?
27.06.2018
19:01:01
ща про визардо начнется

Mikhail
27.06.2018
19:01:08
=D

Sergey
27.06.2018
19:03:06
а что в реакторе хорошего?
Реактор хотя бы имеет конкретную цель, решает конкретные задачи (реализует реактивный подход со всеми его достоинствами и недостатками). Достоинства/недостатки реактивного подхода обсуждать не возьмусь, на практике мало имел с ним дело

Dmytro
27.06.2018
19:03:11
Я два часа не читал, а вы до сих пор ведетесь на его троллинг. Ну емнип

Tolegen
27.06.2018
19:03:34
Аргументы то будут в ответ?