网站上有一个使用onClick
javascript函数运行名为HiddenUsers.show()
或HiddenUsers.hide()
在我的Java代码中,我使用HttpURLConnection
类建立了与此站点的连接。我可以使用BufferedOutputStream
发布登录凭据,我可以获得InputStream
的回复。但是有可能发送命令使得该按钮响应被点击反过来触发服务器端的JS功能,或者甚至更好地从我的Java代码中调用JS函数本身?
答案 0 :(得分:0)
是否可以发送命令使得该按钮响应点击依次触发服务器端的JS功能
也许我没有完全关注,但Javascript在客户端(例如在浏览器中)运行,而不是在服务器上运行。因此,通过HttpURLConnection将javascript代码发送到网页没有多大意义。但是,您可以查看网页源代码和脚本,并找出按下按钮时会发生什么并做出响应。例如,如果按钮是提交按钮,则可以使用HttpURLConnection从与该按钮关联的表单数据发送get / post数据。
甚至更好地从我的Java代码中调用JS函数本身
您可以通过java中包含的javascript ScriptEngine调用javascript代码,但更改网页DOM的javascript调用将脱离上下文。
答案 1 :(得分:0)
你的第一句话中有一个简短的笑话。
除此之外,不,这不可能。我假设您正在尝试自动获取并从java发布到另一台服务器。它会收到javascript,HTML等...但它不会执行javascript,除非你不想让javascript引擎执行它,然后你有什么好处“显示”什么?
我假设您的角度是获取“隐藏”的用户。用户可能已经在某处的HTML标记中,在这种情况下,您只需要解析从响应中获取的HTML并获取它们。 “.show()”函数也可能通过ajax调用获取用户列表。如果是这种情况,你最好的办法就是弄清楚ajax调用是什么,并直接用另一个HttpURLConnection处理它。