Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-7054

a pure REST interface for all operations in Solr

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None
    • None

    Description

      It would be a single handler say /docs

      GET would do a query

      GET /docs is equivalent to /select/q=:
      GET /docs?q=a:b will be equivalent to /select?q=a:b
      GET /docs/docId will be equivalent to /select?q=id:docId

      PUT/POST /docs is equivalent to /update and the default format for json would be that of /update/json/docs

      DELETE /docs/id will do a delete by id

      DELETE /docs?q=x:val is delete by query

      We can think of implementing this as a new RequestHandler without changing anything in Solr. Itcan be configured as follows

      <requestHandler name="/docs" class="RestRequestHandler">
        <str name="GET">/select</str> <!--This will just use the /select handler to handle http GET -->
        <str name="GET-single">/get</str> <!-- all GET requests to /docs/id will be handed by /get request handler . Please suggest a better name-->
        <str name="POST">/update/json/docs</str> <!-- All POST requests will use the handler configured at /update/json/docs -->
        <str name="PUT">/update/json/docs"</str> <!-- PUT requests will use same as POST -->
        <str name="DELETE">/update"</str> <!-- DELETE requests will use /update as well --> 
      </requestHandler>
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              noble.paul Noble Paul
              Votes:
              1 Vote for this issue
              Watchers:
              13 Start watching this issue

              Dates

                Created:
                Updated: