2015-05-26 4 views
0

В моем проекте Java я использую GSA Java API в качестве вспомогательного запроса и получения результатов поиска. Согласно документации API, я считаю, что я сделал все правильно в книге. Чтобы проверить свою первую операцию поиска, я построить следующий URLЗапрос запроса поискового запроса Google Search 502

URL: http://myHOST:myPORT/search?access=p&output=xml&client=&lr=tr&num=100&site=myXMLCollection

и отправить его в API надеясь, что я получал результаты. Но появляется ошибка HTTP 502.

java.io.IOException: Server returned HTTP response code: 502 for URL: http://myHOST:myPORT/search?access=p&output=xml&client=&lr=tr&num=100&site=myXMLCollection 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1626) 
    at java.net.URL.openStream(URL.java:1037) 
    at net.sf.gsaapi.GSAClient.search(Unknown Source) 
    at net.sf.gsaapi.GSAClient.getGSAResponse(Unknown Source) 
    at net.sf.gsaapi.GSAClient.getGSAResponse(Unknown Source) 

Я пропустил что-то среди отправленных параметров?

+1

'myHOST' - вот ваш хозяин или Google хозяин? 502 - плохой шлюз. Можете ли вы открыть этот URL-адрес в браузере? – Guntis

+0

Я могу открыть его. Полная заявка url запроса возвращает «неизвестная ошибка» с пустой страницей в браузере. – metzelder

+1

Я считаю, что вам не хватает фактического запроса ... 'q =' параметра URL. Если я правильно помню, GSA вернет ошибку, если ее нет. Вам всегда нужно что-то искать, даже если вы хотите получить все проиндексированные страницы. – AJPerez

ответ

1

Я вижу пару полей, отсутствующих в вашем запросе. Добавьте приведенные ниже параметры.

  1. Параметр запроса i.e q=your term. Если вы используете java api, тогда установите запрос с помощью метода setQueryTerm (term).
  2. Добавьте клиента, т. Е. Frontend. Вы можете установить метод setFrontend (frontend) в Java API.
  3. Я использую неверное значение. Он должен быть lr=lang_tr, если язык является турецким.

С уважением, Mohan

+0

Есть ли какой-либо вариант, чтобы я мог вернуть все индексы из коллекции? – metzelder

+1

вы можете использовать параметр поиска искомых полей. Удалите параметр q из запроса и добавьте обязательные поля (& requiredfields = metadataName). Метаданные, которые вы собираетесь использовать в обязательных полях, должны присутствовать на всех страницах. –

+1

Если я не ошибаюсь, GSA может вернуть только до 1000 результатов. Нужно проверить это. –