有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

服务器上运行的Clojure项目中Google自定义搜索的java集成

我正在为一个web应用程序(聊天机器人)进行clojure项目。我将Google自定义搜索与"Custom JSON API Reference"工具集成在一起,在聊天机器人无法回答问题的情况下,Google搜索结果会很好地打印在聊天窗口中。在本地主机上,一切正常,但在线(在服务器上运行编译的jar文件时)如果询问聊天机器人没有答案的问题,则不会发生任何事情。有人知道这个问题吗

我的项目依赖项在project中。clj:

  :dependencies [[org.clojure/clojure "1.6.0"]
                [compojure "1.1.7"]
                [hiccup "1.0.2"]
                [org.clojure/java.jdbc "0.2.3"]
                [ring/ring-jetty-adapter "1.2.1"]
                [com.h2database/h2 "1.3.170"]
                [cheshire "5.5.0"] ;
                [org.clojure/clojurescript "0.0-2371"]
                [clj-http "2.0.0"]]

在集成了Google定制搜索的文件中,我使用JSON定制搜索API中的其余部分,通过clj http接收结果。客户端获取函数

比赛。clj文件包含:

   (:require ...
             [clj-http.client :as client]
             [clojure.data.json :as json]
             [clojure.pprint :as pprint]
             [cheshire.core :refer :all]
    )

并调用函数:

(client/get (str google-search-url (apply str question)))

谷歌搜索url中包含以下表单:

https://www.googleapis.com/customsearch/v1?key=(put in API key)&cx=(put in Engine ID)

我不明白,如果在本地主机上运行jar文件,为什么会起作用,如果在服务器上运行,为什么会失败。首先,我生成了一个浏览器密钥,但随后我读到还有服务器API密钥,并用这个密钥重试。尽管如此,它仍然不起作用

我期待有人能帮助我

问题还没有解决。我在服务器上记录了错误,得到了以下信息:

2016年1月28日下午4:58:21组织。阿帕奇。http。impl。执行链。RetryExec执行 信息:处理对{s}->;的请求时捕获I/O异常(java.net.SocketException)https://clojars.org:443:这是一个很好的例子

有人知道原因是什么


共 (0) 个答案