net.connect
net.connect
is framework for establishing network
connections.
Resolvers are responsible for DNS lookups and yielding connection details.
net.resolvers.manual
- The simplest resolver, takes a list of manually specified IP address and port pairs to connect to.
net.resolvers.basic
- Connect to a hostname on a port over IPv6 or IPv4. Supports Happy-Eyeballs and DANE.
net.resolvers.service
-
Locate a service using SRV records, spawning a
basic
resolver for each. net.resolvers.chain
- Chain arbitrary resolvers together, e.g. to try multiple SRV records.
Example Use:
local connect = require"prosody.net.connect".connect;
local basic_resolver = require"prosody.net.resolvers.basic".new;
local listeners = {};
function listeners.onconnect(conn)
:write("GET / HTTP/1.1\r\n");
conn:write("Host: www.example.com\r\n");
conn:write("Connection: close\r\n");
conn:write("\r\n");
connend
function listeners.onincoming(conn, data
io.write(data);
end)
connect(basic_resolver("www.example.com", 80))