无论我做什么按钮都不会执行Javascript

时间:2018-09-04 03:11:49

标签: javascript html css

下面的以下代码应按以下方式工作,用户假设输入URL,代理IP和代理端口,只要单击“测试”,它将获取响应代码并将html h5“等待测试”替换为新的状态代码文本。我制作了这个完全相同的脚本的另一个版本,它通过客户端运行,但是当您通过电子应用程序运行并单击“测试”按钮时,您得到的只是一个错误,我如何获得按钮“测试”来执行脚本?任何帮助将不胜感激。

索引HTML

  <!DOCTYPE html>
  <html lang="en" dir="ltr">
    <head>
      <meta charset="utf-8">
      <title>Simple Tester</title>
      <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.3.3/semantic.min.css"/>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.3.3/semantic.min.js"></script>
      <link rel="stylesheet" href="style.css">
      </head>
    <body>
    <h1 id="header">Simple Tester v1.00</h1>

    <div class="content">
    <div class="proxytesturls">
    <h3 id="url" style="color:#4a04de;" >Site URL:</h3>
    <div class="ui large input">
    <input type="text" placeholder="Google.com" id="siteurltext">
    </div>
    </div>

    <div class="proxyip">
    <h3 id="ip" style="color:#4a04de;">Proxy IP:</h3>
    <div class="ui large input" id="proxyinput">
    <input type="text" placeholder="1.1.1.1" id="proxyipinput">
    </div>
    </div>

    <div class="proxyport">
    <h3 id="port" style="color:#4a04de;">Proxy Port:</h3>
    <div class="ui large input">
    <input type="text" placeholder="8080" id="proxyportinput">
    </div>
    </div>

    <input type="button" id="btnclick" value="test" onclick="pingProxy();">

    <div class="ui raised segment" id="logger">
    <h2 style="color:#4a04de;" id="logstext">Logger</h2>
    <h5 id="awaitingtest">Awaiting test...</h5>
    </div>
    </div>

    <script src="tester.js" type="text/javascript"></script>
    </body>
  </html>

tester.js

  const request = require('request');
  var pingProxy = require('ping-proxy');

  var url = document.getElementById("siteurltext").value;
  var proxyip = document.getElementById("proxyipinput").value;
  var proxyport = document.getElementById("proxyportinput").value;



  pingProxy({
    proxyHost: proxyip,
    proxyPort: proxyport,
    proxyTestUrl: 'https://', url

  },

   function (err, options, statuscode) {

  if (statuscode == 407) {
    document.getElementById('awaitingtest').innerHTML = ('Status: Proxy Authentication Required');
  }

  if (statuscode == 200) {
    document.getElementById('awaitingtest').innerHTML = ('Status: Valid Proxy!');
  }

  if (statuscode == 403) {
    document.getElementById('awaitingtest').innerHTML = ('Status: Banned Proxy!');
  }

  if (statuscode == 401) {
    document.getElementById('awaitingtest').innerHTML = ('Status: Unauthorized!');
  }

  }
);

Main.js

const electron = require('electron')

  const {app, BrowserWindow} = require('electron')

    function createWindow () {
      // Create the browser window.
      win = new BrowserWindow({width: 800, height: 600})

      // and load the index.html of the app.
      win.loadFile('index.html')
    }

    app.on('ready', createWindow)

错误:

未捕获的TypeError:回调不是函数     在pingProxyAsync(C:\ Users *********** \ proxytester \ node_modules \ ping-proxy \ ping-proxy.js:21)     在HTMLInputElement.onclick(index.html:37)

1 个答案:

答案 0 :(得分:0)

您可能需要连接proxyTestUrl。用加号替换逗号。

pingProxy({
proxyHost: proxyip,
proxyPort: proxyport,
proxyTestUrl: 'https://' + url

},