State more explicitly that concurrent requests are not supported

This commit is contained in:
Marcel Stör 2016-05-14 13:55:25 +02:00
parent 1744372060
commit e5cd17f08b
1 changed files with 33 additions and 32 deletions

View File

@ -3,24 +3,25 @@
| :----- | :-------------------- | :---------- | :------ |
| 2016-01-15 | [esphttpclient](https://github.com/Caerbannog/esphttpclient) / [Vowstar](https://github.com/vowstar) | [Vowstar](https://github.com/vowstar) | [http.c](../../../app/modules/http.c)|
Basic HTTP *client* module.
Basic HTTP *client* module that provides an interface to do GET/POST/PUT/DELETE over HTTP(S), as well as customized requests. Due to the memory constraints on ESP8266, the supported page/body size is limited by available memory. Attempting to receive pages larger than this will fail. If larger page/body sizes are necessary, consider using [`net.createConnection()`](#netcreateconnection) and stream in the data.
Provides an interface to do basic GET/POST/PUT/DELETE over HTTP(S), as well as customized requests. Due to the memory constraints on ESP8266, the supported page/body size is limited by available memory. Attempting to receive pages larger than this will fail. If larger page/body sizes are necessary, consider using [`net.createConnection()`](#netcreateconnection) and stream in the data.
!!! note "Note:"
It is **not** possible to execute concurrent HTTP requests using this module. Starting a new request before the previous has completed will result in undefined behavior.
Each request method takes a callback which is invoked when the response has been received from the server. The first argument is the status code, which is either a regular HTTP status code, or -1 to denote a DNS, connection or out-of-memory failure, or a timeout (currently at 10 seconds).
For each operation it is also possible to include custom headers. Note that following headers *can not* be overridden however:
- Host
- Connection
- User-Agent
The `Host` header is taken from the URL itself, the `Connection` is always set to `close`, and the `User-Agent` is `ESP8266`.
Note that it is not possible to execute concurrent HTTP requests using this module. Starting a new request before the previous has completed will result in undefined behavior.
## http.delete()
Executes a HTTP DELETE request.
Executes a HTTP DELETE request. Note that concurrent requests are not supported.
#### Syntax
`http.delete(url, headers, body, callback)`
@ -50,7 +51,7 @@ http.delete('http://httpbin.org/delete',
## http.get()
Executes a HTTP GET request.
Executes a HTTP GET request. Note that concurrent requests are not supported.
#### Syntax
`http.get(url, headers, callback)`
@ -76,7 +77,7 @@ http.get("http://httpbin.org/ip", nil, function(code, data)
## http.post()
Executes a HTTP POST request.
Executes a HTTP POST request. Note that concurrent requests are not supported.
#### Syntax
`http.post(url, headers, body, callback)`
@ -106,7 +107,7 @@ http.post('http://httpbin.org/post',
## http.put()
Executes a HTTP PUT request.
Executes a HTTP PUT request. Note that concurrent requests are not supported.
#### Syntax
`http.put(url, headers, body, callback)`
@ -136,7 +137,7 @@ http.put('http://httpbin.org/put',
## http.request()
Execute a custom HTTP request for any HTTP method.
Execute a custom HTTP request for any HTTP method. Note that concurrent requests are not supported.
#### Syntax
`http.request(url, method, headers, body, callback)`