如何使用luasocket连接URL地址?

这是我的代码:

socket = require('socket')
conn = socket.connect('http://chat.freenode.net', 6667)
if conn == true then
print('connected') else
print('error') end

我甚至尝试在 URL 中添加 http,但它不起作用。

点赞
用户1442917
用户1442917

如果出现错误信息(第二个返回值),它应该相当容易理解:

local socket = require('socket')
local conn, err = socket.connect('http://chat.freenode.net', 6667)
print(conn, err)

这会打印nil "host or service not provided, or not known",因为您提供的 URL 包含方案,在这种情况下不需要。 尝试:

local conn, err = socket.connect('chat.freenode.net', 6667)
print(conn, err)

这应该会打印类似"tcp {client}: 05EBB998"的内容。

2017-12-29 06:44:02