Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在最新版本的LuaJit中发送HTTP请求,现在实际使用的库是什么?_Lua_Luajit - Fatal编程技术网

如何在最新版本的LuaJit中发送HTTP请求,现在实际使用的库是什么?

如何在最新版本的LuaJit中发送HTTP请求,现在实际使用的库是什么?,lua,luajit,Lua,Luajit,我需要在LuaJit2.0.5中发送HTTP请求。到目前为止,我已经尝试了3个HTTP客户机库,但都不起作用。由于安装过程中出错,我无法安装最新版本 我的Lua版本是5.3 LuaJit2.0.5是否有一个客户端HTTP库可以正常工作?一个我可以安装和使用的。 LuaSocket--安装后不工作: luasocket 3.0rc1-2 is now installed in /usr (license: MIT) 及 适用于5.1、5.2和5.3,包括Windows和Linux 适用于5.

我需要在LuaJit
2.0.5
中发送HTTP请求。到目前为止,我已经尝试了3个HTTP客户机库,但都不起作用。由于安装过程中出错,我无法安装最新版本

我的Lua版本是5.3

LuaJit
2.0.5
是否有一个客户端HTTP库可以正常工作?一个我可以安装和使用的


LuaSocket--安装后不工作:

luasocket 3.0rc1-2 is now installed in /usr (license: MIT)

  • 适用于5.1、5.2和5.3,包括Windows和Linux
  • 适用于5.1、5.2和5.3,但仅支持Linux
  • 专门使用LuaJIT,但会得到一个单独的二进制文件
一个快速的谷歌搜索也发现了,但我不知道它是否有效


你和LuaSocket之间的问题很奇怪

你不是在使用Lua5.3,而是在使用LuaJIT,这在很大程度上是对Lua5.1的重写;但是它正在5.3目录中寻找
socket

这很可能是因为您已将
LUA_CPATH
设置为LUA 5.3 include路径。这不应在安装了多个Lua系统的系统上使用,因为所有Lua版本都使用该环境变量,而且它甚至会在较新版本中隐藏特定于版本的
Lua\u CPATH\u X\u Y
变量

  • 找出环境变量的精确值
    LUA\u CPATH
  • 理想情况下,此变量应该是未设置的
  • 如果3。如果不是这种情况(它不会),请找出变量的设置位置。常见的可疑文件有:项目配置文件、.bashrc和.profile文件(位于主目录中)
  • 修正这些变量。Lua5.3还使用变量
    Lua_CPATH_5_3
    ,因此如果不想破坏东西,可以将其更改为该变量

  • 一个简短的提示:我没有提到
    LUA\u路径
    LUA\u路径5\u 3
    ,因为您的问题是C模块;但最有可能的是,这些变量也有同样的问题,因此也应该遵循相同的步骤。

    我在Lua5.1下使用。这是一个很好的工作方式,但您必须编写自己的请求函数。@csaar我说了-luajit您似乎对lua版本感到困惑。LuaJIT是Lua5.1,而不是Lua5.3。另外,对于HTTP(以及一般的网络),你的操作系统和你的Lua版本一样重要。我想我开始看到你的问题了:你真的不知道Lua版本。LuaJIT=5.1;它不是Lua5.3。您可能在某个地方将
    LUA\u PATH
    变量设置为LUA 5.3路径,而不是您应该使用的
    LUA\u PATH\u 5\u 3
    。在这一点上,我建议打开一个新的问题。您的问题是,LuaJIT在错误的位置1)LuaJIT查找
    套接字
    ?2)在安装过程中编译良好?不。问题和已解决的问题3)我会试试。1)是的,事实上。2) 是的,只是不在Windows上2)不,不在
    $ luajit
    LuaJIT 2.0.5 -- Copyright (C) 2005-2017 Mike Pall. http://luajit.org/
    JIT: ON CMOV SSE2 SSE3 SSE4.1 fold cse dce fwd dse narrow loop abc sink fuse
    > a1 = require "socket"
    error loading module 'socket.core' from file '/usr/lib/lua/5.3/socket/core.so':
        /usr/lib/lua/5.3/socket/core.so: undefined symbol: luaL_setfuncs
    stack traceback:
        [C]: at 0x5617fff23fb0
        [C]: in function 'require'
        /usr/share/lua/5.3/socket.lua:12: in main chunk
        [C]: in function 'require'
        stdin:1: in main chunk
        [C]: at 0x5617ffed4c00