2015-09-20 27 views
1

我想向Selenium PhantomJS添加自定義http請求標頭。具體而言,此標頭Accept-Language: en-USSelenium PhantomJS Java自定義標題

我能夠通過閱讀其他帖子來了解這一點,但如何填寫setCapability的第二個參數來設置自定義標頭?

DesiredCapabilities caps = new DesiredCapabilities();  
caps.setCapability(PhantomJSDriverService.PHANTOMJS_PAGE_CUSTOMHEADERS_PREFIX, ""); 

我在Stackoverflow上看到了另一篇文章,但那篇文章涉及到Python而不是Java。

回答

3

PHANTOMJS_PAGE_CUSTOMHEADERS_PREFIX常量='phantomjs.page.customHeaders。'

所以你需要將標題添加到前綴。

在你的情況,你想這樣做:

DesiredCapabilities cap = DesiredCapabilities.phantomjs(); 
cap.setCapability(PhantomJSDriverService.PHANTOMJS_PAGE_CUSTOMHEADERS_PREFIX + "Accept-Language", "en-US"); 
cap.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, "path to phantomjs executable"); 

然後簡單地傳遞能力駕駛員的構造:

WebDriver driver = new PhantomJSDriver(cap);