从URLConnection(php文件)中读取

时间:2018-08-21 10:48:10

标签: java php urlconnection

我想从主机上的php文件中获取数据。它在互联网上的地址是:http://ali-nb.vcn.ir/test1.php(它有一个简单的数据可退回)。我尝试连接此php文件并获取其数据,但遇到以下错误:

<b>
<html><body><script type="text/javascript" src="/aes.js" ></script> 
<script>function toNumbers(d){var e=[];d.replace(/(..)/g,function(d) {e.push(parseInt(d,16))});return e}function toHex(){for(var d=[],d=1==arguments.length&&arguments[0].constructor==Array?arguments[0]:arguments,e="",f=0;f<d.length;f++)e+=(16>d[f]?"0":"")+d[f].toString(16);return e.toLowerCase()}var a=toNumbers("f655ba9d09a112d4968c63579db590b4"),b=toNumbers("98344c2eee86c3994890592585b49f80"),c=toNumbers("c703233d825667e15645b62e0873a2fc");document.cookie="__test="+toHex(slowAES.decrypt(c,2,a,b))+"; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/"; location.href="http://ali-nb.vcn.ir/test1.php?i=1";</script> 
<noscript>This site requires Javascript to work, please enable Javascript in your browser or use a browser with Javascript support</noscript></body></html>
</b>

这是我的Java代码:

public class Main {

    public static void main(String[] args) {

        StringBuilder sb=new StringBuilder();
        String line;

        try {

            URL mylink=new URL("http://ali-nb.vcn.ir/test1.php");
            try {
                URLConnection connect=mylink.openConnection();
                connect.setDoInput(true);
                connect.setUseCaches(false);

                DataInputStream dis=new DataInputStream(connect.getInputStream());
                BufferedReader reader=new BufferedReader(new InputStreamReader(connect.getInputStream()));

                while((line=dis.readLine())!=null)
                {
                    sb.append(line);
                }

                System.out.println(sb.toString());

            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
    }

}

解决方案是什么?

1 个答案:

答案 0 :(得分:0)

该网页使用Javascript实现其功能。通常,您的Web浏览器将执行Javascript并为您提供答案,但是由于您是直接连接的,因此没有任何东西可以执行Javascript。

从理论上讲,您可以尝试在Java内部执行脚本,但这很复杂,取决于您要执行的脚本,并且解决方案很差。

因此,简而言之,您实际上想做的事情是您实际上不应该尝试做的事情。