This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
api:internet [2016/07/09 03:59] gamax92 Remove bogus signals documentation and document headers |
api:internet [2019/06/15 09:24] payonel |
||
---|---|---|---|
Line 3: | Line 3: | ||
This library wraps functionality of Internet cards. Also see the [[component:internet|Internet Component]] for more low level functionality (such as querying availability of HTTP and TCP functionality). | This library wraps functionality of Internet cards. Also see the [[component:internet|Internet Component]] for more low level functionality (such as querying availability of HTTP and TCP functionality). | ||
- | - `internet.request(url: string[, data: string or table[, headers: table]]): function` | + | - `internet.request(url: string[, data: string or table[, headers: table[, method: string]]]): function` |
- | Sends an HTTP request to the specified URL, with the specified POST data, if any. If no data is specified, a GET request will be made. The POST data can be in one of two formats: if it's a string, it will be sent as-is. If it's a table, it will be converted to a string by assuming that each key is the name of a POST variable, and it's associated value is the value for that variable. So, for example: | + | Sends an HTTP request to the specified URL, with the specified POST data, if any. If no data is specified, a GET request will be made. The POST data can be in one of two formats: if it's a string, it will be sent as-is. If it's a table, it will be converted to a string by assuming that each key is the name of a POST variable, and it's associated value is the value for that variable. **method** can be explicitly specified to values such as GET, POST, or PUT. Some examples: |
`internet.request(url, {some = "variable", another = 1})` | `internet.request(url, {some = "variable", another = 1})` | ||
Will send `some=variable&another=1`. | Will send `some=variable&another=1`. | ||
The returned function is an iterator over chunks of the result, use it like so: | The returned function is an iterator over chunks of the result, use it like so: | ||
`for chunk in internet.request(...) do stuff() end` | `for chunk in internet.request(...) do stuff() end` | ||
+ | Note that **this method ALSO support HTTPS**. So simply use | ||
+ | `internet.request("https://example.com")` to send a request through HTTPS. | ||
+ | | ||
+ | Example specifying PUT: | ||
+ | `internet.request("https://example.com", "put data", {}, "PUT")` to send a request through HTTPS. | ||
- `internet.socket(address:string[, port:number]):table` | - `internet.socket(address:string[, port:number]):table` | ||
Line 69: | Line 74: | ||
``` | ``` | ||
- | For a more advanced example, check out the IRC Client program available in the latest release of OpenComputers: [irc.lua](https://github.com/MightyPirates/OpenComputers/blob/master/src/main/resources/assets/opencomputers/loot/OpenIRC/irc.lua) | + | For a more advanced example, check out the IRC Client program available in the latest release of OpenComputers: [irc.lua](https://github.com/MightyPirates/OpenComputers/blob/master-MC1.7.10/src/main/resources/assets/opencomputers/loot/irc/usr/bin/irc.lua) |
Contents | Contents | ||
----------- | ----------- | ||
{{page>api:contents&noheader&noeditbutton&nouser&nofooter}} | {{page>api:contents&noheader&noeditbutton&nouser&nofooter}} | ||
+ |