JSによってSeleniumのリクエストにクッキーを追加しようとしています。ドキュメンテーションは明らかです(http://seleniumhq.github.io/selenium/docs/api/javascript/module/selenium-webdriver/lib/webdriver_exports_Options.html#addCookie)が、私のコードスニペットは、サーバー上のPHPスクリプト(下)にクッキーを渡しません。Selenium JSがリクエストするクッキーを追加します
クライアントJSコード:
var webdriver = require('selenium-webdriver');
var driver = new webdriver.Builder()
.withCapabilities({'browserName': 'firefox'})
.build();
driver.manage().addCookie("test", "cookie-1");
driver.manage().addCookie("test", "cookie-2").then(function() {
driver.get('http://localhost/cookie.php').then(function() {
driver.manage().addCookie("test", "cookie-3");
driver.manage().getCookie('test').then(function (cookie) {
console.log(cookie.value);
});
setTimeout(function() {
driver.quit();
}, 30000);
});
});
ServerのPHPコード:あなたのクッキーは、あなたがaddCookieを呼び出す時にあるため送信されません
<?php
print_r($_COOKIE);
?>
console.logは正常に動作し、「cookie-3」を返します。問題は、空の配列を表示するPHPスクリプトです。 – kchod