diff --git a/webdriver-spec.html b/webdriver-spec.html index 73d1c94aa..0d9afb226 100644 --- a/webdriver-spec.html +++ b/webdriver-spec.html @@ -881,7 +881,8 @@
If request’s method is POST: +
If request’s method is POST
+ or PUT
:
Let parse result be the result of @@ -1383,6 +1384,26 @@
The table of endpoint nodes for an intermediary node has the following +endpoints: + +
Method | +URI Template | +Command | +
---|---|---|
POST | /session | New Session |
DELETE | /session/{session id} | Delete Session |
GET | /status | Status |
DELETE | /session/{session id}/{/paths*} | Pass Through |
GET | /session/{session id}/{/paths*} | Pass Through |
POST | /session/{session id}/{/paths*} | Pass Through |
PUT | /session/{session id}/{/paths*} | Pass Through |
In most cases, an intermediary node simply needs to accept incoming
+commands from downstream, identify the correct associated
+session and forward the command upstream, awaiting the
+response and sending it back downstream. However, there are some
+commands that behave differently in an intermediary node, and some that
+are specific to intermediary nodes.
+
+ The Pass Through command forwards a command from
+ a downstream neighbor upstream to an associated
+ session, and the returns the response back to
+ the downstream neighbor.
+
+ The remote end steps are:
+ If there is no associated session for the
+ reference session return an error with
+ error code invalid session id.
+
+ Let upstream url be a URL created by
+ concatenating the associated session's URL, URL
+ prefix, " Let connection be the result of creating a new HTTP
+ connection to upstream url with the same method as
+ this command was called with. How this is done is outside the scope
+ of this specification.
+
+ Set the headers of the HTTP request.
+
+ If method is Let data be the result of serializing as JSON parameters.
+
+ This must create a JSON Object that is
+ isomorphic to the original JSON Object parsed in step 6 of
+ the processing model.
+
+ Transmit data to the upstream node
+ using connection.
+ Await the response from the upstream
+ node. Let status code be the HTTP status sent from
+ the upstream node.
+
+ Send a response with arguments status code
+ and response.
+Pass Through
+
+
+
+
+
+
+ HTTP Method
+ Path Template
+
+
+ DELETE
+ /session/{session id}{/paths*}
+
+
+ GET
+ /session/{session id}{/paths*}
+
+
+ POST
+ /session/{session id}{/paths*}
+
+
+PUT
+ /session/{session id}{/paths*}
+
+
+
+/session/
", the reference to
+ session id, and the referenced paths.
+
+ POST
or PUT
:
+
+
+
+