我有我的幻影Js代碼的問題,如下所示,我有代碼來測試我的朋友Web服務器(使用節點Js)。實際上,它看起來很簡單,完美運行。使用PhantomJs登錄測試
var page = require('webpage').create(); var address = "http://localhost:3333"; // Route "console.log()" calls from within the Page context to the // main Phantom context (i.e. current "this") page.onConsoleMessage = function(msg) { console.log("Console.log: ", msg); }; page.onAlert = function(msg) { console.log("Alert:", msg); }; page.open(address, function (s) { page.evaluate(function() { function click(el){ var ev = document.createEvent("MouseEvent"); ev.initMouseEvent( "click", true /* bubble */, true /* cancelable */, window, null, 0, 0, 0, 0, /* coordinates */ false, false, false, false, /* modifier keys */ 0 /*left*/, null ); el.dispatchEvent(ev); } document.getElementById('username').value = 'MyName'; document.getElementById('password').value = 'MyWord'; click(document.querySelector('input[type=submit]')); }); page.onNavigationRequested = function() { // console.log("Moved", JSON.stringify(arguments)) // to check whether send or not page.render("printscreen" + ".png"); }; setTimeout(function(){ page.render("nextprintscreen" + ".png"); phantom.exit(); }, 3000); });
但
當我宣佈
var userName = 'MyName';
var passWord = 'MyWord';
然後將它放在下面
var address = "http://localhost:3333";
和交流
document.getElementById('username').value = 'MyName';
document.getElementById('password').value = 'MyWord';
與
document.getElementById('username').value = userName;
document.getElementById('password').value = passWord;
它從我的朋友Web服務器返回invalid username or password
。你能幫我弄清楚爲什麼會發生嗎?這是我第一個'javascript世界'的代碼。
我已經讀過this question和another variation然後a suggestion
,但它只是讓我更加迷惑。
感謝,
艾哈邁德
感謝..我會嘗試明天..現在我在休息.. ^^。 –
它像河流一樣工作。不管怎麼說,還是要謝謝你。 –