История изменений
Исправление MariaRTI, (текущая версия) :
В данном примере я не делаю GET запросов, только POST. При этом, как я только что написал, браузер почему то НЕ делает OPTIONS запрос, судя по тому, какие запросы приходят на сервер. Звездочку я пишу, т.к. запросы могут приходить со множества клиентов, у которых множество оригинальных серверов (например, в датацентре или в компании) и у каждого может быть свой домен. Поэтому, конкретный домен original я указать не могу, но могу указать единственный домен сервера upserver (на клиенте или original-серверах), который известен всем. Клиентский код присутствует на всех узлах.
Сейчас добавил DELETE на сервере,
options(Req, Opts) ->
%%Req0 = cowboy_req:set_resp_header(<<"access-control-max-age">>, <<"1728000">>, Req),
Req1 = cowboy_req:set_resp_header(<<"access-control-allow-methods">>, <<"HEAD, OPTIONS, GET, PUT, POST, DELETE">>, Req),
Req2 = cowboy_req:set_resp_header(<<"access-control-allow-headers">>, <<"Origin, X-Requested-With, Content-Type, Accept, x-client-key, x-client-token, x-client-secret">>, Req1),
Req3 = cowboy_req:set_resp_header(<<"access-control-allow-origin">>, <<"*">>, Req2),
{ok, Req3, Opts}.
но ничего не поменялось. Приходят исключительно только запросы POST. Приходят пересылаемые файлы, а также, на сервере, получаю сообщение об ошибке
=NOTICE REPORT==== 23-Nov-2021::11:07:32.934745 ===
TLS server: In state wait_finished received CLIENT ALERT: Fatal - Certificate Unknown
файлы приходят после этих ошибок.
Странно, сертификаты я создавал много раз, по проверенным инструкциям, но все они самоподписанные. Есть мнение, что только КУПЛЕННЫЕ у коммерческого центра сертификации корневые сертификаты сделают цепочку сертификатов валидной. Неужели нет способа это обойти для локальных проектов, использующих SSL/TLS? Кормушка мля какая-то.
Может быть сертификаты немного неправильно созданы или неправильно подключены? Есть мысли на этот счет?
Исходная версия MariaRTI, :
В данном примере я не делаю GET запросов, только POST. При этом, как я только что написал, браузер почему то НЕ делает OPTIONS запрос, судя по тому, какие запросы приходят на сервер. Звездочку я пишу, т.к. запросы могут приходить со множества клиентов, у которых множество оригинальных серверов (например, в датацентре или в компании) и у каждого может быть свой домен. Поэтому, конкретный домен original я указать не могу, но могу указать единственный домен сервера upserver (на клиенте или original-серверах), который известен всем. Клиентский код присутствует на всех узлах.
Сейчас добавил DELETE на сервере,
options(Req, Opts) ->
%%Req0 = cowboy_req:set_resp_header(<<"access-control-max-age">>, <<"1728000">>, Req),
Req1 = cowboy_req:set_resp_header(<<"access-control-allow-methods">>, <<"HEAD, OPTIONS, GET, PUT, POST, DELETE">>, Req),
Req2 = cowboy_req:set_resp_header(<<"access-control-allow-headers">>, <<"Origin, X-Requested-With, Content-Type, Accept, x-client-key, x-client-token, x-client-secret">>, Req1),
Req3 = cowboy_req:set_resp_header(<<"access-control-allow-origin">>, <<"*">>, Req2),
{ok, Req3, Opts}.
но ничего не поменялось. Приходят исключительно только запросы POST. Приходят пересылаемые файлы, а также, на сервере, получаю сообщение об ошибке
=NOTICE REPORT==== 23-Nov-2021::11:07:32.934745 ===
TLS server: In state wait_finished received CLIENT ALERT: Fatal - Certificate Unknown
файлы приходят после этих ошибок.
Странно, сертификаты я создавал много раз, по проверенным инструкциям, но все они самоподписанные. Есть мнение, что только КУПЛЕННЫЕ у коммерческого центра сертификации корневые сертификаты сделают цепочку сертификатов валидной. Неужели нет способа это обойти для локальных проектов, использующих SSL/TLS? Кормушка мля какая-то.