【发布时间】:2014-06-27 19:13:30
【问题描述】:
使用Web-Harvest library 创建的应用程序测试一些问题无济于事。我们的网络环境混合了代理和其他过滤器,我正在尝试排除有问题的 User-Agent 字符串。
我认为问题在于如何在应用程序中指定字符串,但我不知道如何输出提供的字符串以进行调试。
我可以在 IDE 调试器中看到该字符串,但我确实需要此输出以供其他人在服务器上进行测试。
【问题讨论】:
标签: java webharvest
使用Web-Harvest library 创建的应用程序测试一些问题无济于事。我们的网络环境混合了代理和其他过滤器,我正在尝试排除有问题的 User-Agent 字符串。
我认为问题在于如何在应用程序中指定字符串,但我不知道如何输出提供的字符串以进行调试。
我可以在 IDE 调试器中看到该字符串,但我确实需要此输出以供其他人在服务器上进行测试。
【问题讨论】:
标签: java webharvest
您可以在执行后通过查询 http 对象来输出标头(以及有关 http 处理器的其他信息)。 下面是将标头信息保存到 webharvest 变量中的示例代码
<config>
<http url="${yoururl}"></http>
<script><![CDATA[
String keys="";
for(int i=0;i<http.headers.length;i++) {
keys+=(http.headers[i].key + "=" + http.headers[i].value +"\n---\n");
}
SetContextVar("myCookie", keys);
]]>
</script>
</config>
myCookie 变量然后返回如下内容:
Server=Apache
---
Content-Language=en-GB
---
Pragma=no-cache
---
Cache-Control=no-cache,no-store,must-revalidate
---
Expires=0
---
Content-Type=text/html;charset=UTF-8
---
Date=Thu, 17 Jul 2014 14:35:41 GMT
---
Transfer-Encoding=chunked
---
Connection=keep-alive
---
Connection=Transfer-Encoding
---
Set-Cookie=Unique=%1%enc%3~~~ Domain=~~~; Path=/; Expires=Sat, 16 Jul 2016 14:35:40 GMT; HttpOnly
---
Set-Cookie=Session=%1%V2ID~~~
---
Set-Cookie=ServerPool=A; Domain=~~~
---
Set-Cookie=005db%3Bhac01a%3A10023%3B;
---
Set-Cookie=ReturnTo=%1%%2F~~~
---
【讨论】: