如何使用intern移动到某个页面后确定HTTP状态?
this.remote.get('http://google.de') // status 200
this.remote.get('http://google.de/alsdflasdf') // 404 Not Found
答案 0 :(得分:2)
所以这就是hack ..使用BrowserMob代理并通过BrowserMob Proxy发送您的请求,这些代理将为您提供您希望拥有的所有相关状态代码。
以下是使用browsermob代理将最后一个响应代码保存到a的代码示例
变量:
int lastResponseCode;
ProxyServer server = new ProxyServer(8888);
server.start();
server.addResponseInterceptor(new HttpResponseInterceptor() {
@Override
public void process(HttpResponse response, HttpContext context) throws HttpException,
IOException {
lastResponseCode = response.getStatusLine().getStatusCode();
}
});
DesiredCapabilities caps = new DesiredCapabilities();
caps.setCapability(CapabilityType.PROXY, server.seleniumProxy());
WebDriver driver = new FirefoxDriver(caps);
在selenium Webdriver中永远不会支持状态代码的原因在于:https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/141