それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

lua でhttp リクエスト

lua でhttp リクエス

local http_request = require("http.request")

-- HTTPリクエストを作成
local headers, stream = http_request.new_from_uri("https://g.co"):go()
local body = stream:get_body_as_string()
if headers:get ":status" ~= "200" then
    error(body)
end
print(body)

追加パッケージのインストール無しでパッケージ管理も使わずに使えた。

なんでだろうと疑問を感じたので、apt を調べたら。なんかapt でインストール済みだったみたい。

現在の apt の lua 環境

sudo apt list '*lua*' --installed  | cut -d '/' -f 1  | grep -v dev

インストールされているパッケージ

liblua5.1-0
liblua5.2-0
liblua5.3-0
libluajit2-5.1-2
libluajit2-5.1-common
libnginx-mod-http-lua
lua-ansicolors
lua-argparse
lua-basexx
lua-binaryheap
lua-bit32
lua-bitop
lua-busted
lua-cgi
lua-cjson
lua-cliargs
lua-compat53
lua-copas
lua-cosmo
lua-coxpcall
lua-cqueues
lua-curl
lua-curses
lua-cyrussasl
lua-dbi-common
lua-dbi-mysql
lua-dbi-postgresql
lua-dbi-sqlite3
lua-discount
lua-dkjson
lua-event
lua-expat
lua-fifo
lua-filesystem
lua-geoip
lua-hamlib
lua-http
lua-iconv
lua-inifile
lua-inotify
lua-inspect
lua-json
lua-ldap
lua-lgi
lua-logging
lua-lpeg-patterns
lua-lpeg
lua-lpty
lua-luaossl
lua-luassert
lua-luv
lua-md5
lua-mediator
lua-messagepack
lua-mmdb
lua-mpack
lua-nvim
lua-penlight
lua-posix
lua-readline
lua-redis
lua-resty-core
lua-resty-lrucache
lua-rex-gnu
lua-rex-onig
lua-rex-pcre2
lua-rex-posix
lua-rex-tre
lua-rings
lua-rrd
lua-say
lua-sec
lua-socket
lua-sql-mysql
lua-sql-odbc
lua-sql-postgres
lua-sql-sqlite3
lua-system
lua-systemd
lua-term
lua-unbound
lua-unit
lua-uri
lua-wsapi-fcgi
lua-wsapi
lua-yaml
lua-zlib
lua5.1
lua5.2-doc
lua5.2

nvim 関連で結構いろいろはいっていたっぽい