@react_js

Страница 4186 из 5115
Ilya
14.06.2018
21:02:33
само собой https://t.me/webpack_ru
Так это относится больше к реакту и SSR ;D

Valery
14.06.2018
21:27:56
Может кто-нибудь объяснить как работает .env файл? Можно ли как то настроить, что бы для тестового сервера загружался один файл, а для прода другой? И как использовать переменные из этого файла в коде? Например, что бы для теста url апи брался из .env.test, а для прода, эта же переменная бралась из .env.production. Или при сборке с помощью npm run build данные будут сами подтягиваться из .env.production? Как это работает?

Google
Valeriy
14.06.2018
21:34:41
там еще есть куча возможностей https://github.com/facebook/create-react-app/blob/master/packages/react-scripts/template/README.md#adding-custom-environment-variables

создай проект, сделай eject и посмотри как они это реализовали

Илья
14.06.2018
21:39:24
Коллеги привет, делаю запрос к url через axios, в headers добавил Authorization , т.к. Авторизация Basic , но он почему то возвращает 401 (Unauthorized)

theffs
14.06.2018
21:40:56
Каким образом можно зарендерить инпуты, которые формируются из объекта, который получаются при реквесте на сервер, и при этом хранить стейт каждого инпута?

Илья
14.06.2018
21:41:27
axios.post(session_url, {}, { headers : { 'Access-Control-Allow-Origin' : '*', 'Access-Control-Allow-Headers' : 'Origin, X-Requested-With, Content-Type, Accept', 'Access-Control-Allow-Methods' : 'PUT, GET, POST, DELETE, OPTIONS', 'Authorization' : 'Basic QVBJOkM3cXh6dHU=' }, auth: { username: uname, password: pass } })

Вот, даже два раза передаю auth

Google
Vlad
14.06.2018
21:44:00
Попробуйте так

Илья
14.06.2018
21:44:14
Я через Postman делаю запрос, получаю все, он пердлагает мне в хэдере прописать просто Basic QVBJOkM3cXh6dHU=

"authorization": "Basic QVBJOkM3cXh6dHU="

Vlad
14.06.2018
21:44:57
Valeriy
14.06.2018
21:45:16
А корсы разве 401 вернут?
вообще нет конечно

поэтому я думаю, что там скорее всего не Basic

лично я давно Basic не встречал уже

Vlad
14.06.2018
21:45:47
Или токен неверный) такое тоже возможно)

Илья
14.06.2018
21:45:53


Вот в Postman так и все ок

Valeriy
14.06.2018
21:46:03
кроме того для дев окружения можно вообще избавиться от CORS полностью

Vlad
14.06.2018
21:46:08
Через курл сделай

Valeriy
14.06.2018
21:46:17
а в проде возможно и CORS никакого нет

Vlad
14.06.2018
21:46:20
А то постманами они тестируют)

Вот в Postman так и все ок
Если через curl не пройдет, то ты что-то в хелерах не то скорее всего отправляешь, просто постмен много чего сам навешает

Valeriy
14.06.2018
21:48:07
кстати, рекомендую вместо curl установить утилитку http

для линукса и macos есть

гораздо удобнее и приятнее выглядит с подсветкой сразу хедеров и json

Vlad
14.06.2018
21:48:35
А олдскул?

Google
Valeriy
14.06.2018
21:48:50


А олдскул?
а оно и есть олдскул :))

только более наглядный

Vlad
14.06.2018
21:49:46
Вот в Postman так и все ок
Кстати, постмен в basic auth вроде barear добавляет, не? Попробуйте

только более наглядный
Спасибо, гляну на досуге, но обычно курс из-заплагина в вскод

Valeriy
14.06.2018
21:51:44
curl в смысле?

Илья
14.06.2018
21:52:36
попробовать barear?

Vlad
14.06.2018
21:52:37
Да, автоисправление

попробовать barear?
Уже пару раз говорили

Valeriy
14.06.2018
21:52:53
Илья
14.06.2018
21:53:54
так а если у меня basic auth то в axios просто auth не подойдет?

Как вообще передавать такое? в хэдере или через auth?

Valeriy
14.06.2018
21:54:13
какой смысл передавать токен и логин одновременно?

` headers = { Authorization: `Bearer ${token}` }`

чертов телеграм :))

просто обычно когда юзер зашел в веб, ты ищешь токен в локалсторадже например

ты его берешь и делаешь запрос типа is-auth с этим токеном в хедере

пришел ответ 401, отправляешь юзера логиниться

сабмитит форму, отправляешь данные auth: { username, password } что то типа этого

Google
Valeriy
14.06.2018
21:58:18
получаешь токен

Илья
14.06.2018
21:58:19
Не, у меня задача попроще, есть веб сервис, надо к нему обратиться, логин и пароль постоянный и получить оттуда данные в json

Valeriy
14.06.2018
21:58:57
ну если там есть логин и пароль значит есть ендпоинт получения токена по ним

типа sign_in или login

Илья
14.06.2018
22:02:22
Нет там такого, просто логин и пароль

Valeriy
14.06.2018
22:04:22
Нет там такого, просто логин и пароль
ну смотри что эендпоинт по логину и паролю возвращает

у тебя сайт будет на другом домене висеть отдельно от этого сервиса?

Илья
14.06.2018
22:05:54
Нет, на том же

Admin
ERROR: S client not available

Valeriy
14.06.2018
22:06:09
Нет, на том же
на хера тебе Cross Origin вообще?

если продакшн у тебя на том же домене в итоге будет

Илья
14.06.2018
22:06:33
Тестирую пока что на другом домене

Valeriy
14.06.2018
22:06:41
для дев окружения добавь proxy в package.json

"proxy": { "/staging": { "target": "http://staging.service.local", "pathRewrite": { "^/staging": "" } }, "/local": { "target": "http://localhost:9292", "pathRewrite": { "^/local": "" } } },

что то типа такого сделай для себя

в самом приложении определяй что если дев окружение то префикс перед урлом делай /local

Илья
14.06.2018
22:08:01
local это дев?

Valeriy
14.06.2018
22:08:04
ага

работает прозрачно

т.е. вебпак дев сервер перехватывает твои запросы к урлу начинающемуся с локал и делает их с бакенда

Google
Valeriy
14.06.2018
22:08:53
браузер отдыхает в этот момент

и про корс в итоге ничего не знает

Илья
14.06.2018
22:10:00
а ну еще веб сервис поднят через https это имеет значение?

Valeriy
14.06.2018
22:10:20
у меня так три окружения работают одинаково

Илья
14.06.2018
22:11:40
Сделал, но все равно авторизацию не проходит

Valeriy
14.06.2018
22:11:53
в проде CORS нет, на стейджинге и локал деве CORS

Сделал, но все равно авторизацию не проходит
у тебя к бакенду есть доступ то?

надо там смотреть почему именно не проходит

Илья
14.06.2018
22:12:25
Да

Valeriy
14.06.2018
22:12:38
на чем там сделано?

Илья
14.06.2018
22:12:44
Там апач стоит просто и прога которая отдает по http сервису jsin

json

Valeriy
14.06.2018
22:13:20
надо смотреть контроллер собственно как он определяет что ты не авторизован

либо логин пароль кривой вводишь

либо токен не в тот header передаешь

он же его по факту может где угодно ждать, это от бакендера зависит

не все знают стандарты :))

и лепят как попало как привыкли

Илья
14.06.2018
22:28:27
А если я буду логин и пароль передавать только axios.post(session_url, {}, { auth: { username: uname, password: pass } })

Страница 4186 из 5115