将搜索重定向到Google Search Appliance结果页面

时间:2014-04-24 22:05:23

标签: javascript iframe google-search-appliance

我有一个带有搜索按钮的主页,该按钮目前将用户引导至Google的通用Search Appliance(GSA)结果页面,但我想将结果包装到自定义HTML页面中,而不使用XSLT。

我环顾网络并听说可以使用JavaScript或服务器端脚本完成。我知道也有iFrame解决方案;但是,当您在iFrame的同一页面中使用搜索字段时,它只是一个解决方案。

由于我无法访问后端服务器,因此我宁愿在前端执行此操作,无论是使用JavaScript还是其他脚本。我似乎无法在Google的文档中找到有关如何执行此操作的任何示例。

有没有人会举例说明这种情况?

2 个答案:

答案 0 :(得分:0)

所以你有几个选择:

  1. 在您的表单操作(即提交搜索时会发生什么)中,您可以使用URL参数指向GSA上的特定前端,但包含proxystylesheet参数。然后,这将返回纯XML,您可以根据需要使用它(此XML的内容已有详细记录)。
  2. 修复原始问题并在XSLT中包含页眉和页脚
  3. 请记住,对于#1,在结果中包含一些更好的GSA UI功能(如文档预览和动态导航)会更加困难。 如果CSS冲突是#2的唯一担心,我个人会花时间尝试解决这些问题。

答案 1 :(得分:0)

您提到您无权访问后端服务器,但是您可以在网络服务器上创建反向代理吗? (即http://yoursite/search -> http://yourgsa/search

使用代理和一些JavaScript是最好的方法。你无法通过Javascript以任何其他方式跨站点从GSA中使用XML / jSON。

有一个样式表可以将结果转换为json / jsonp:

https://github.com/steveathon/GSJSON

但是GSA并没有发出使这项工作运作良好的所有标题。