2017-01-14 5 views
0

Я пытаюсь сделать свой iframe для автоматического входа в систему.Код iframe не работает

Вот мой код. Он не регистрируется автоматически. В чем проблема с моим кодом?

<form id="login" target="frame" method="post" action="https://172.16.8.187:6060/NCMContainer.cc"> 
    <input type="hidden" name="username" value="user" /> 
    <input type="hidden" name="password" value="pass" /> 
</form> 
<iframe id="frame" name="frame"></iframe> 
<script type="text/javascript"> 
    // submit the form into iframe for login into remote site 
    document.getElementById('login').submit(); 
    // once you're logged in, change the source url (if needed) 
    var iframe = document.getElementById('frame'); 
    iframe.onload = function() { 
     if (iframe.src != "https://172.16.8.187:6060/NCMContainer.cc") { 
      iframe.src = "https://172.16.8.187:6060/NCMContainer.cc"; 
     } 
    } 
+0

@Gserg благодарим вас за редактирование, пожалуйста, помогите – jinggoyestrada

+0

'отправьте форму i nto iframe для входа в удаленный сайт' - да, ваш код не делает этого вообще - iframe загружается с использованием метода GET - для входа в систему необходим метод POST - вам нужно ввести форму в iframe, а затем запустить отправьте в форме в iframe –

+0

, можете ли вы дать мне код для этого? Я просто новичок, мне так жаль. – jinggoyestrada

ответ

0

Ваш главный HTML должен выглядеть следующим образом:

<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="utf-8" /><meta charset="utf-8" /> 
    <title>Numpty</title> 
    </head> 
    <body> 
    <iframe src="frame.html"></iframe> 
    </body> 
</html> 

затем создать новый файл, frame.html, который может выглядеть следующим образом

<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="utf-8" /><meta charset="utf-8" /> 
    </head> 
    <body> 
    <form id="login" method="post" action="https://172.16.8.187:6060/NCMContainer.cc"> 
     <input type="hidden" name="username" value="user" /> 
     <input type="hidden" name="password" value="pass" /> 
    </form> 
    <script type="text/javascript"> 
     document.getElementById('login').submit(); 
    </script> 
    </body> 
</html> 

Теперь IFrame будет вошедшего в https://172.16.8.187:6060/

+0

он идет на страницу, но он не входит в систему. Есть что-то не хватает? поле имени пользователя и пароль на сайте все еще пусто. – jinggoyestrada

+0

проверить консоль разработчика или вкладки в сети - это POST на 'https: //172.16.8.187: 6060/NCMContainer.cc'? если нет, есть проблема с моим кодом, если это так, то это, вероятно, потому, что 'https: //172.16.8.187: 6060/NCMContainer.cc' не любит иметь форму, представленную с любого хоста, на котором находится ваш main.html –

Смежные вопросы