zoukankan      html  css  js  c++  java
  • 【solr基础教程之九】客户端 分类: H4_SOLR/LUCENCE 2014-07-30 15:28 904人阅读 评论(0) 收藏


    一、Java Script

    1、由于Solr本身可以返回Json格式的结果,而JavaScript对于处理Json数据具有天然的优势,因此使用JavaScript实现Solr客户端是一个很好的选择。

    2、在之前,主要使用SolJS作为solr的客户端,目前主要使用ajax-solr,信息请见:https://github.com/evolvingweb/ajax-solr/wiki/Reuters-tutorial%3A-step-1。

    3、以下示例未使用上述所述的客户端,而是使用了ajax的基本功能,完成了搜索结果的呈现。

    <html>
    <head>
    <meta charset="UTF-8">
    <title>Search Result</title>
    <script type="text/javascript">
    	var xmlhttp;
    	var responseJson;
    	function loadXMLDoc(url) {
    		xmlhttp = null;
    		if (window.XMLHttpRequest) {// code for Firefox, Opera, IE7, etc.
    			xmlhttp = new XMLHttpRequest();
    		} else if (window.ActiveXObject) {// code for IE6, IE5
    			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    		}
    		if (xmlhttp != null) {
    			xmlhttp.onreadystatechange = state_Change;
    			xmlhttp.open("GET", url, true);
    			xmlhttp.send(null);
    		} else {
    			alert("Your browser does not support XMLHTTP.");
    		}
    	}
    
    	function state_Change() {
    		if (xmlhttp.readyState == 4) {// 4 = "loaded"
    			if (xmlhttp.status == 200) {// 200 = "OK"
    
    				//将responseText转化为Json类型的变量,才能通过点号读取数据。
    				responseJson = eval("(" + xmlhttp.responseText + ")");
    				for (var i = 0; i < responseJson.response.docs.length; i++) {
    					document.write("title:"
    							+ responseJson.response.docs[i].title + "<br>");
    					document.write("time:"
    							+ responseJson.response.docs[i].tstamp + "<br>");
    					document.write("content:"
    							+ responseJson.response.docs[i].content.substring(
    									20, 100) + "<br><br><br>");
    
    				}
    			} else {
    				alert("Problem retrieving data:" + xmlhttp.statusText);
    			}
    		}
    	}
    </script>
    </head>
    
    <body onload="loadXMLDoc('/solr/collection1/query?q=*:*')">
    
    </body>
    
    </html>


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    日常脚本练习与解释
    第五周作业
    centos 7中命令记录
    centos7 中如何查看、打开、关闭防火墙。
    第四周
    复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的 行首的空白字符
    vim中设置tab缩进为4个字符
    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
    sql 索引笔记--索引组织结构
    sql 索引笔记2
  • 原文地址:https://www.cnblogs.com/lujinhong2/p/4637271.html
Copyright © 2011-2022 走看看