luaengineapp/tests/network/https.lua

53 lines
1.7 KiB
Lua

#!/usr/bin/env luaengine
--[[
******************************************************************************
* luaEngine Lua Engine for Qt
* Copyright (C) 2020 Syping
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
******************************************************************************
--]]
local globalLabel
function main()
-- Window
mainWindow = createMainWindow("LE TCP Test")
local mainLayout = createLayout(VerticalLayout, mainWindow)
local socket = createTcpSocket()
connect(socket, "connected()", "socketConnected")
connect(socket, "readyRead()", "socketReadyRead")
socketConnect(socket, "syping.de:443")
globalLabel = createLabel("<b>Connecting...</b>", mainLayout)
-- Show Window
setWidgetSize(mainWindow, 650, 450)
showWidget(mainWindow, ShowDefault)
return GuiExecuted
end
function socketConnected(socket)
setObjectText(globalLabel, "<b>Connected!</b>")
tcpSocketStartTLS(socket)
eIOWrite(socket, "GET / HTTP/1.1\r\nHost: www.syping.de\r\nUser-Agent: LuaEngine\r\nConnection: close\r\n\r\n")
socketFlush(socket)
end
function socketReadyRead(socket)
setObjectText(globalLabel, "<b>Reading...</b>")
local readData = eIOReadAll(socket)
setObjectText(globalLabel, readData)
end