隐藏通过URL打开的弹出窗口在没有页面重定向的情况下ping URL

问题描述

我目前正在研究将电话听筒连接到Web界面的计算机电话集成系统。可以使用http命令“ http://admin:password@[phone ip address]/command.htm?number=[phonenumber]”从SNOM手机发出呼叫。除打开一个新窗口重定向到SNOM索引页面外,此方法正常运行-我正在尝试停止此重定向,但仍允许进行呼叫。

不是直接在浏览器中输入URL,而是提供了一个链接用户可以按该链接开始通话:

<a target="popup" onclick="dial()">Dial</a>

链接调用使用通过相应网址传递的window.open()的Dial()函数

以下是我试图“隐藏”或伪装新打开的标签页的内容

  • 使用window.open()然后实现x毫秒的超时,然后使用.close()关闭标签
    =>该页面打开并拨打了电话,但没有关闭
  • 使用window.document.open()。write()更改SNOM索引页的内容,使其表示“拨号号码” =>这样可以正确地重写页面,因此至少可以掩盖弹出窗口,但可以更改url至:空白且听筒不拨号
  • 使用window.blur()或将window的“ left” /“ top”参数设置为10000将其移出页面=>这也不起作用,只是将其移至角落。
  • 应用iframe隐藏框架=>这会导致更多错误
  • 我尝试了许多AJAX表单/方法,但进展并不顺利。

为尝试解决此问题,我访问了以下stackoverflow链接

简而言之,我需要能够调用URL-“ http://admin:password@[phone ip address]/command.htm?number=[phonenumber]”,然后隐藏弹出窗口,立即关闭弹出窗口但仍然进行呼叫,或者重写页面以便伪装它。

这是以下代码

<!DOCTYPE html>
<html>

<head>
<Meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests"> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>

<style>

a {
  padding:.5em;
  background-color:rgb(55,55,55);
  color:white;
  text-decoration:none;
  font-weight:lighter;
  cursor:pointer;
}

</style>

<body>

Call Number

<br>
<input name = 'number' id = 'number' type = 'number'>
<br><br>
<a target="popup" onclick="dial()">Dial</a>

</body>

<script>   

function dial() {

  var num = $('#number').val();

  str1 = 'http://admin:password@[ip address]/command.htm?number=9'
  var url = str1.concat(num);


  var x = window.open(url,'_blank','toolbar=no,status=no,menubar=no,scrollbars=no,resizable=no,left=-20000,top=20000,width=10,height=10,visible=none').blur();


/*
w.document.open().getElementById('body').innerHTML="<body fontFamily = 'Raleway' bgColor='red' text='white'><table><tr><td><img src= 'https://www.sexologistdoctorindelhi.com/images/call.gif' style = 'height:120px;margin-left:-40px;margin-right:-30px;margin-top:-20px;'</td><td><h1 style = 'margin-top: -15px;'> Dialling</h1><p style = 'margin-top:-20px;'> "+num+"</p></td><title>WWS</title></body>";
*/
  
}
</script>

</html> 

解决方法

如果您可以选择使用iframe,则只需将height中的widthiframe设置为0,或者将hidden的可见性设置为

。 >

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...