2017-03-21 2 views
1

Ich habe über Solr gelernt und bin auf ein Problem gestoßen. Wenn ich eine Anfrage an Solr wie folgt mache:Inhaltstyp in Solr Antworten

Ich bekomme eine Webseite zurück, die die JSON-Antwort hat. Der Webseiten-Header sagt jedoch nichts über den Inhaltstyp aus.

Ich möchte den Content-Type in der Kopfzeile erhalten, so dass Solr-Benutzer schöne Druckwerkzeuge verwenden können, um die Solr-Antwort zu bereinigen und sie lesbarer zu machen, ohne die Option "Einzug = an" bereitzustellen Zeit.

Irgendwelche Hilfe?

Dank

<html> 
    <head> 
    <link rel="alternate stylesheet" type="text/css" 
    href="resource://gre-resources/plaintext.css" 
    title="Wrap Long Lines"> 
    <style type="text/css"></style> 
    </head> 
    <body> 
    <pre>{"responseHeader":{"status":0,"QTime":0,"params": 
     {"q":"*:*","rows":"0","wt":"json"}},"response": 
     {"numFound":27394430,"start":0,"docs":[]}} 
    </pre> 
    </body> 
</html> 

EDIT: Dank der Antwort unten, habe ich es behoben. Ich habe die Änderung durch den Config-API:

curl http://localhost:8983/solr/collectionName/config 
    -H 'Content-Type:application/json' -d '{ 
    "update-queryresponsewriter" : { 
    "name":"json", 
    "class":"solr.JSONResponseWriter", 
    "defaults": { 
     "name":"application/json; charset=UTF-8" 
    } 
    } 
}' 

Nur als Anmerkung, hat die Änderung nicht sofort wirksam für mich, so dass Sie eine Minute warten müssen, um die für Ihre Änderungen zu zeigen.

Antwort

2

Wie das Beispiel solrconfig.xml vermuten lässt, sollten Sie die Content-Type, indem Sie den folgenden Abschnitt beheben:

<queryResponseWriter name="json" class="solr.JSONResponseWriter"> 
    <!-- For the purposes of the tutorial, JSON responses are written as 
    plain text so that they are easy to read in *any* browser. 
    If you expect a MIME type of "application/json" just remove this override. 
    --> 
    <str name="content-type">text/plain; charset=UTF-8</str> 
    </queryResponseWriter> 

Moderne Browser ohne JSON Viewer JSON angezeigt, als ob es Klartext waren, so, wenn Sie das sehen wollen Daten in Sachen wie IE6 wird es dir gut gehen.

Entdeckt über http://grokbase.com/t/lucene/dev/1372n9jyha/solr-content-type-for-json

+0

Fantastisch, vielen Dank für Ihre Hilfe. Ich versuche herauszufinden, wie die Config-API verwendet wird, um diese Änderung vorzunehmen. – kgrimes2