使用luasocket下载文件

使用luasocket下载文件,lua,download,luasocket,Lua,Download,Luasocket,我很抱歉,如果这有一个简单的解决方案,或者如果这已经解决之前,但我是如此远离任何类型的网络编程,我真的不知道什么是错误的,也不知道搜索什么来修复它 我希望能够使用我熟悉的语言Lua从“”(和其他地方)下载一个json文件,扩展名为luasocket local https = require "ssl.https" --luasec local r,c,h,s = https.request { url = "https://api.coinbase.com/v2/exchange-ra

我很抱歉,如果这有一个简单的解决方案,或者如果这已经解决之前,但我是如此远离任何类型的网络编程,我真的不知道什么是错误的,也不知道搜索什么来修复它

我希望能够使用我熟悉的语言Lua从“”(和其他地方)下载一个json文件,扩展名为luasocket

local https = require "ssl.https" --luasec
local r,c,h,s = https.request {
    url = "https://api.coinbase.com/v2/exchange-rates",
    sink = ltn12.sink.file(io.stdout)
}

我尝试过使用
http.request
ftp.get
,但都没有返回任何类型的信息。我不明白为什么我可以在浏览器上找到那个url,它会下载一个文件,但我无法通过luasocket获取文件数据。如果我不能使用luasocket,那么从web浏览器发出的请求与从类似luasocket的东西发出的请求之间有什么区别?

正如您可能看到的,您的URL是
https
而不是普通的
http
。您需要使用加密连接。使用luasec而不是luasocket(实际上,luasec依赖于luasocket,但现在不必麻烦了;简而言之,luasec的
https.request
是基于
http.request
从luasocket构建的)

这将在控制台中打印请求内容的正文


有关和的详细信息。

您可以看到,您的URL是
https
而不是普通的
http
。您需要使用加密连接。使用luasec而不是luasocket(实际上,luasec依赖于luasocket,但现在不必麻烦了;简而言之,luasec的
https.request
是基于
http.request
从luasocket构建的)

这将在控制台中打印请求内容的正文

更多关于和