2013-06-03 71 views
0

我正在做以下請求:Apache solr糟糕的JSON響應?

GET/solr的/ populationvars8 /選擇Q = POB &重量= JSON & json.wrf = jQuery191039282788056880236_1370268228739 &行= 2 & HL =真& hl.fl = description_autocomplete & _ = 1370268228740 HTTP/1.1

響應的意思是通過jquery自動完成呈現。問題在於「突出顯示」的數據被錯誤地返回(或者我認爲)。這裏是我的迴應的一部分:

{ 
    "responseHeader": { 
     "status": 0, 
     "QTime": 29 
    }, 
    "response": { 
     "numFound": 491, 
     "start": 0, 
     "docs": [ 
      { 
       "description": "Población de 70 años y más", 
       "description_autocomplete": "Población de 70 años y más", 
       "accesibilidad": "y" 
      }, 
      { 
       "description": "Población de 65 años y más", 
       "description_autocomplete": "Población de 65 años y más", 
       "accesibilidad": "y" 
      } 
     ] 
    }, 
    "highlighting": { 
     "": { 
      "description_autocomplete": [ 
       "Población de 65 años y más" 
      ] 
     } 
    } 
} 

的問題是,「高亮」的反應有一些不好的鍵/值對(重複鍵的名字,因爲它是空白)。結果是,當解析這個JSON時,我總是得到最後的「description_autocomplete」數據。如果你想看看實際的結果是什麼,你可以將JSON代碼複製粘貼到jsonlint.com中,它會說它是有效的,但它只會有一個「高亮」結果。

我是否在我的solr配置中丟失了某些東西,或者這是solr中的一些小錯誤?

注:

  • schema.xml中有 「unikeKey」 標籤(真的不知道這是否會幫助)
  • 場 「description_autocomplete」 是從另一領域的 「copyField」。
  • 以上要求通過瀏覽器完成時給出完整的JSON,但是當解析(選擇你的工具)時,我只能得到一個「高亮」結果
  • 我知道在RFC 4627(JSON規範)中,這似乎不是有效的如果需要,我可以提供我的Solr配置
  • Solr的版本JSON
  • 是4.3.0 1477023
+0

你的情況似乎缺少獨特性,這就是爲什麼不顯示id爲突出顯示部分,這將使您能夠映射到響應?你是否填充了唯一的密鑰並將其標記爲必填項? – Jayendra

+0

的確是多數民衆贊成在什麼我想念,獨特wasnt被填充。 謝謝jayendra。 – yan

+0

很酷......我可以將它添加爲答案,並且您也接受它。 – Jayendra

回答

0

突出部分可以匹配具有唯一ID相應的響應。

你的情況似乎缺少了唯一性,這就是爲什麼id不顯示在突出顯示部分,這將使你能夠映射到響應。

您是否填充了唯一的密鑰並將其標記爲必填?