我需要从网站自动下载文件。文件下载按钮只有在登录后才会显示,我提供了用户名和密码。在登录表单有两个隐藏字段其中之一是用生成的值csrf_token_login:如何在Java中提交带有生成值的隐藏csrf_token_login字段的html登录表单
很清楚如何在Java(使用java.net.HttpURLConnection中),如果我刚才登录,该代码密码(在Using java.net.URLConnection to fire and handle HTTP requests中有很好的解释):提交POST请求,获取cookies并将它们设置为任何后续请求。但是,如何在登录表单上获取csrf_token_login的生成值并将其与其他值一起提交?
在登录页面的HttpURLConnection上使用getInputStream()读取它可以获得csrf值。但同时这建立从张贴数据设置连接属性连接,并防止:
private HttpURLConnection logUrlCon;
...
BufferedReader logInput = new BufferedReader(new InputStreamReader(logUrlCon.getInputStream()));
... // read and get csrf value OK
logUrlCon.setDoOutput(true); // throws java.lang.IllegalStateException: Already connected
有越来越的登录表单生成此csrf_tiken_login值和用户名和密码张贴的任何方式?
2012-05-25
tv116