HTTP SEARCH Method
draft-snell-search-method-02
Network Working Group J. Reschke
Internet-Draft greenbytes
Updates: 5323 (if approved) A. Malhotra
Intended status: Standards Track
Expires: March 6, 2021 J.M. Snell
September 2, 2020
HTTP SEARCH Method
draft-snell-search-method-02
Abstract
This specification updates the definition and semantics of the HTTP
SEARCH request method originally defined by RFC 5323.
Editorial Note
This note is to be removed before publishing as an RFC.
Distribution of this document is unlimited. Although this is not a
work item of the HTTPbis Working Group, comments should be sent to
the Hypertext Transfer Protocol (HTTP) mailing list at ietf-http-
wg@w3.org (mailto:ietf-http-wg@w3.org), which may be joined by
sending a message with subject "subscribe" to ietf-http-wg-
request@w3.org (mailto:ietf-http-wg-
request@w3.org?subject=subscribe).
Discussions of the HTTPbis Working Group are archived at
<http://lists.w3.org/Archives/Public/ietf-http-wg/>.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on March 6, 2021.
Reschke, et al. Expires March 6, 2021 [Page 1]
Internet-Draft HTTP SEARCH Method September 2020
Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
extracted from this document must include Simplified BSD License text
as described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. SEARCH . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. The "Accept-Search" Header Field . . . . . . . . . . . . . . 5
4. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.1. Simple SEARCH with a Direct Response . . . . . . . . . . 6
4.2. Simple SEARCH with indirect response (303 See Other) . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . 7
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
7. Normative References . . . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8
1. Introduction
This specification updates the HTTP SEARCH method originally defined
in [RFC5323].
Many existing HTTP-based applications use the HTTP GET and POST
methods in various ways to implement the functionality provided by
SEARCH.
Using a GET request with some combination of query parameters
included within the request URI (as illustrated in the example below)
is arguably the most common mechanism for implementing search in web
applications. With this approach, implementations are required to
parse the request URI into distinct path (everything before the '?')
and query elements (everything after the '?'). The path identifies
the resource processing the query (in this case 'http://example.org/
feed') while the query identifies the specific parameters of the
search operation.
A typical use of HTTP GET for requesting a search
Reschke, et al. Expires March 6, 2021 [Page 2]
Internet-Draft HTTP SEARCH Method September 2020
GET /feed?q=foo&limit=10&sort=-published HTTP/1.1
Host: example.org
While there are definite advantages to using GET requests in this
manner, the disadvantages should not be overlooked. Specifically:
o Without specific knowledge of the resource and server to which the
GET request is being sent, there is no way for the client to know
Show full document text