【发布时间】:2012-07-10 21:29:21
【问题描述】:
我是 lua 新手,但我正在开发一个适用于具有给定路径的特定文件的应用程序。现在,我想处理我下载的文件。是否有任何 lua 库或代码行可用于下载并将其存储在我的计算机上?
【问题讨论】:
标签: lua
我是 lua 新手,但我正在开发一个适用于具有给定路径的特定文件的应用程序。现在,我想处理我下载的文件。是否有任何 lua 库或代码行可用于下载并将其存储在我的计算机上?
【问题讨论】:
标签: lua
您可以使用 LuaSocket 库及其 http.request 函数通过 HTTP 从 URL 下载。
函数有两种风格:
http.request('http://stackoverflow.com')
http.request { url = 'http://stackoverflow.com', ... }
简单的调用返回 4 个值 - 字符串中的 URL 的全部内容、HTTP 响应代码、标头和响应行。然后,您可以使用 io 库将内容保存到文件中。
高级调用允许您设置多个参数,例如 HTTP 方法和标头。一个重要的参数是sink。它代表LTN12-style sink。对于存储到文件,您可以使用sink.file:
local file = ltn12.sink.file(io.open('stackoverflow', 'w'))
http.request {
url = 'http://stackoverflow.com',
sink = file,
}
【讨论】:
local file 语句获得以下信息:attempt to index local 'file' (a function value)