获取SessionStorage
当前playwright没有直接获取sessionStorage的接口,只有获取locaStorage。
所以需要和js代码配合才能拿到我们需要的信息。
String allSessionStorage = page.evaluate("JSON.stringify(window.sessionStorage)").toString();
log.debug("获取的所有sessionStorage是[{}]", allSessionStorage);
//JSONObject使用的hutool工具包里面的对象
JSONObject sessObj = new JSONObject(allSessionStorage);
String pageId = sessObj.getStr("kslive.log.page_id");
获取cookie
因为playwright只打开一个网页,所以获取了所有的cookie组合在一起。
/**
* 获取所有的cookie组成的字符串
* @param context
* @return
*/
private String getCookie(BrowserContext context) {
List<Cookie> allCookies = context.cookies();
StringBuilder builder = new StringBuilder();
for (Cookie c : allCookies) {
builder.append(c.name).append("=").append(c.value);
builder.append(";");
}
builder.deleteCharAt(builder.length()-1);
return builder.toString();
}