有没有办法用JAVA SE获取JQuery变量内容?

时间:2015-06-29 11:41:37

标签: javascript java jquery html

有没有办法用JAVA SE获取$(this).tree('toJson')的内容?
最近我看到一个JAVA SE代码使用URL获取网站内容,这让我想知道是否有可能从JS / JQuery获取特定内容。

提前致谢。

这是我在JAVA SE上看到的:

import java.net.*;
import java.io.*;

public class URLReader {
    public static void main(String[] args) throws Exception {

        URL oracle = new URL("http://www.oracle.com/");
        BufferedReader in = new BufferedReader(
        new InputStreamReader(oracle.openStream()));

        String inputLine;
        while ((inputLine = in.readLine()) != null)
        System.out.println(inputLine);
        in.close();
    }
}

这是我的'APP':

$(document).ready(function() {

  //var data is a dynamic JSON file that should be created in the backend.
  var data = [{
    label: 'node1',
    id: 1,
    children: [{
      label: 'child1',
      id: 2
    }, {
      label: 'child2',
      id: 3
    }]
  }, {
    label: 'node2',
    id: 4,
    children: [{
      label: 'child3',
      id: 5
    }]
  }];
  $('#tree1').tree({
    data: data,
    autoOpen: true,
    dragAndDrop: true
  });


  console.log($('#tree1').tree('toJson')); //This will give you the loading jqtree structure.

  $('#tree1').bind(
    'tree.move',
    function(event) {
      event.preventDefault();
      // do the move first, and _then_ POST back.
      event.move_info.do_move();
      console.log($(this).tree('toJson')); //this will give you the latest tree.
      $.post('http://system.com', {
        tree: $(this).tree('toJson')
      });
      alert("done"); //this will post the json of the latest tree structure.
    }
  );


});

1 个答案:

答案 0 :(得分:0)

从客户端(运行JQuery的地方)到服务器(运行JAVA代码的地方)获取数据的唯一方法是在服务器调用中发送数据。最简单的形式是在HTTP GET请求或HTTP POST请求的主体中将其发送到URL中。

编辑:在这种情况下,应该在服务器上运行servlet(可能是JSP或Apache Wicket等Web框架)来捕获请求。

此外,请务必考虑您要发送的信息,如果它是私有的,是否需要加密,您是否需要安全(HTTP S )连接,等

请记住,某些类型的数据/字符可能不适合在URL或POST DATA中使用,因此您可能需要对该数据进行编码(例如,在base 64中)以便能够获取/发布它