【问题标题】:How can i use LuaSec for sending in HTTPS我如何使用 LuaSec 在 HTTPS 中发送
【发布时间】:2014-08-14 07:30:59
【问题描述】:

在我的脚本中,我使用库 LuaSocket 来发送 XML 代码。这适用于以下代码:

local request_body = (XMLHeader..XMLBody);
local response_body = {}

local res, code, response_headers = socket.http.request
 {
  url = "http://blabla.com/v01/Authenticatie.svc";
  method = "POST";
  headers = 
 {
  ["Content-Type"] = "application/soap+xml; charset=utf-8";
  ["Content-Length"] = string.len(request_body);
  ["Accept-Encoding"] = "gzip, deflate";
  ["Connection"] = "Keep-Alive";
 };
 source = ltn12.source.string(request_body);
 sink = ltn12.sink.table(response_body);
 }

但现在我将使用带有证书的协议 HTTPS 发送 XML。我知道我可以使用 LuaSec 但如何使用?谁能告诉我,如何将代码修改为 HTTPS 的工作代码?

【问题讨论】:

    标签: https lua luasocket luasec


    【解决方案1】:

    只需添加:

    local https = require("ssl.https")
    

    并替换:

    local res, code, response_headers = socket.http.request
    

    local res, code, response_headers = https.request
     {
      url = "https://blabla.com/v01/Authenticatie.svc"; 
    

    确保已安装 LuaSec:

    luarocks --local install luasec OPENSSL_LIBDIR=/usr/lib64/ #CentOS
    # or
    luarocks --local install luasec OPENSSL_LIBDIR=/usr/lib/x86_64-linux-gnu # Ubuntu 
    

    【讨论】:

      猜你喜欢
      • 2023-01-27
      • 2016-01-16
      • 2013-09-25
      • 2010-11-12
      • 2020-01-03
      • 2010-10-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多