| 
 | 
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Я делаю некий сервис, который будет направлять пользователей на определенную веб-страницу. Допустим это будет  http://captive.local/login.html.  Веб-страница является статическим html, в который сервис подставляет некоторые динамические значения, эта особенность дана сверху и ее не поменять. Однако с пользователями необходимо взаимодействовать и для этого есть другой сайт, допустим http://portal.local. Таким образом интерактив с пользователем строится на двух точках входа — статический captive.local (от которого нельзя отказаться) и динамический portal.local. Я рассматриваю два способа взаимодействия. Первый — на portal.local я настраиваю CORS и все взаимодействие выполняю js-скриптом со статической страницы. Второй — на статической странице я делаю автоматический сабмит формы на portal.local, а уже там взаимодействую с помощью js, но уже без CORS и прочих извращений. Другой аналогичный сервис делает это вторым способом (то есть в статической странице указана форма со скрытыми полями, с методом GET и js-кодом document.form.submit() в теле страницы). Мне первый способ кажется более правильным. Или я что-то не учитываю? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 27.06.2019, 21:47 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Если я правильно понял, то вопрос сводится к тому чтобы - взаимодействовать с пользователем со статической страницы через кроссдоменный ajax или - редиректить пользователя на другой сайт. Если вы все-равно собираетесь строить интерактив через ajax, то реализация будет практически одинаковой. Так что можно оставлять юзера на captive.local ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.06.2019, 08:25 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Я планирую в любом случае делать взаимодействие через AJAX, просто скрипт будет запускаться либо с captive.local (и обращаться к другому домену), либо с portal.local (и обращаться к этому же домену). В принципе я это уже сделал, скрипт работает. Но хотелось бы узнать, может быть есть какие-то тонкости, которые нужно учесть? Другой скрипт сделан примерно так: Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. При обращении к статической странице captive.local подменяет указанные выше переменные на значения, но я не уверен, что он их будет подменять в js-файле. Как правильнее сделать? Вставить такую невидимую форму в html-файл, а из скрипта передать в запрос значения полей этой формы? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.06.2019, 09:25 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Я не совсем понимаю как у вас там устроена логика... Получается, что пользователь на captive.local/login.html вообще не задерживается? Как только загружается страница, сразу же идет перенаправление на portal.local ? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.06.2019, 10:28 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Это портал авторизации хотспота. captive.local — это встроенный портал шлюза, с довольно ограниченными возможностями. Чтобы их обойти, используется собственный портал portal.local с полноценным веб-сервером. Есть готовый коммерческий облачный сервис по авторизации (скрипт которого приведен 21916744 ), он именно что просто редиректит пользователя с передачей параметров. Я делаю свою альтернативу этому сервису на своем собственном портале авторизации. Можно поступать точно также и просто сразу же перенаправлять пользователей на свой портал. Но мне кажется более правильной стандартная статическая страница, которая через AJAX организует взаимодействие между пользователем и порталом. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.06.2019, 12:12 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Переадресация не нравится по нескольким причинам: 1. В адресной строке браузера мелькает эта переадресация с кучей параметров. Чтобы они не мозолили глаза, на новом портале нужно делать еще одну переадресацию, уже на чистую страницу (без query_string). 2. Если по какой-то причине портал авторизации не отвечает или отвечает долго, у пользователя висит пустая страница. 3. Если у пользователя JS отключен или недоступен, то автоматический сабмит все равно не сработает (хотя можно через meta попробовать сделать). А если JS доступен, то параметры он может и сам передать нужные параметры. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.06.2019, 12:17 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  автор3. Если у пользователя JS отключен или недоступен Если javascript отключен, то ajax запросы отправляться в любом случае не будут. Хотя на таких пользователей ориентироваться не стоит. В остальном с вами согласен. Лучше оставлять пользователя на той же странице. авторПри обращении к статической странице captive.local подменяет указанные выше переменные на значения, но я не уверен, что он их будет подменять в js-файле. Заменить значения в полях можно и из js файла. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.06.2019, 18:46 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Нет, из js их подменить нельзя, ни клиент, ни portal их не знает, только captive. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.06.2019, 22:09 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  авторНет, из js их подменить нельзя, ни клиент, ни portal их не знает, только captive. Это get параметры из адресной строки, или что это? Зачем вообще нужна эта форма? Вы же собираетесь делать кроссдоменные запросы.. Через ajax можно передавать любые параметры. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 29.06.2019, 01:06 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  OldMasterЭто get параметры из адресной строки, или что это? Нет, я же писал, что эти параметры в html-файл подставляет сам captive.local. То есть в HTML-файле указано $(mac), а когда этот HTML-файл открывается с клиента, то вместо $(mac) в нем подставлено 11:22:33:44:55:66. То есть замену переменных значениями делает не JS (он ряд значений в принципе не сможет узнать), а сам captive.portal, а затем эти значения передаются либо в форме, либо как-то еще на portal.local. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 02.07.2019, 12:33 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  авторНет, я же писал, что эти параметры в html-файл подставляет сам captive.local. Что-то я не понимаю, откуда берутся эти параметры? В статическом html нет переменных. Какая технология там используется? В любом случае, чтобы там ни использовалось, если вы можете получить параметры на странице, что вам мешает записать их в js переменные. А потом эти переменные можно будет использовать в подключенном файле. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 02.07.2019, 15:42 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Технология называется replace. В captive просто запрограммирована замена определенных подстрок на значения. Но это замена работает не везде, а только в конкретных местах (в login.html), поэтому прямо в подключаемый js их вставить нельзя, только в login.html. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 02.07.2019, 19:34 | 
  
  
  
   | 
||
| 
 
Вопрос по структуре веб-сервиса 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  авторТехнология называется replace. Значит есть какой-то движок. Но даже не вникая в работу вашего бэкэнда, можно предложить вариант в этом же login.html вставлять js переменные Код: html 1. 2. 3. 4. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 02.07.2019, 19:42 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=22&fpage=16&tid=1443734]:  | 
    0ms | 
get settings:  | 
    11ms | 
get forum list:  | 
    14ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    38ms | 
get topic data:  | 
    10ms | 
get forum data:  | 
    2ms | 
get page messages:  | 
    45ms | 
get tp. blocked users:  | 
    1ms | 
| others: | 14ms | 
| total: | 143ms | 

| 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.»
    
    
    ... бла, бла, бла ...