Можно ли использовать POST для выполнения запроса в Solr (/выбор)

У меня есть запросы, против которых я работаю solr индекс, которые иногда имеют очень длинные параметры запроса, я получаю ошибки, когда я выполняю эти запросы, которые я принимаю, делают к пределу ПОЛУЧИТЬ параметры запроса.

Вот метод, который я использую для запросов (JSON), это должно показать, что я использую Расширения Http (клиент, который я использую, тонкая обертка для HttpClient), не вплотную решение. 90% запросов хорошо работают, это - как раз в то самое время, когда параметрические усилители являются большими, я получаю 500 ошибок от solr. Я читал где-нибудь, Вы можете использовать Сообщение при выполнении избранной команды, но не нашли примеры того, как сделать это. Любая справка была бы фантастической!

    public string GetJson(HttpQueryString qs)
    {
        using (var client = new DAC.US.Web.XmlHttpServiceClient(this.Uri))
        {
            client.Client.DefaultHeaders.Authorization = new Microsoft.Http.Headers.Credential("Basic", DAC.US.Encryption.Hash.WebServiceCredintials);
            qs.Add("wt", "json");

            if (!String.IsNullOrEmpty(this.Version))
                qs.Add("version", this.Version);

            using (var response = client.Get(new Uri(@"select/", UriKind.Relative), qs))
            {
                return response.Content.ReadAsString();
            }
        }
    }
13
задан Steen 18 January 2011 в 14:27
поделиться

1 ответ

  1. Не предполагайте. Проверьте журнал Solr, чтобы узнать причину этой ошибки.
  2. / select принимает запросы POST без проблем. Вы можете попробовать это с помощью curl:

     curl -d "q = *: * & rows = 1" http: // localhost: 8983 / solr / select
    

    Я не могу комментировать XmlHttpServiceClient, поскольку это какой-то частный код, но см. на этой странице пример POSTing с использованием HttpWebRequest.

Кстати: существуют библиотеки .net, которые реализуют взаимодействие с Solr, не нужно кататься самостоятельно, если у вас нет очень странных требований.

13
ответ дан 1 December 2019 в 22:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: