openwrt uhttpd php,OpenWrt: uhttpd服务接收POST数据

在/www 文件夹下,创建lua服务文件。文件路径加文件名即为访问路径

接受POST数据并返回

-- 获取数据长度

POSTLength = tonumber(os.getenv("CONTENT_LENGTH")) or 0

if (POSTLength > 0) then

POST = io.read(POSTLength)

-- 处理数据

end

响应请求

io.write("Content-type: text/html\nPragma: no-cache\n\n")

io.write("saved changes,please waiting for the apply\n")

生效配置

/etc/init.d/uhttpd restart

通过http访问修改wrt sta 密码

#!/usr/bin/lua

url = require 'cgi-bin/url'

io.write("Content-type: text/html\nPragma: no-cache\n\n")

s = "success"

out = io.stdout

function wifi_set(map)

local f = io.popen("uci set wireless.@wifi-iface[-1].device=\"radio0\"")

f:close()

f = io.popen("uci set wireless.@wifi-iface[-1].network=\"wan wwan\"")

f:close()

f = io.popen("uci set wireless.@wifi-iface[-1].mode=\"sta\"")

f:close()

f = io.popen(string.format("uci set wireless.@wifi-iface[-1].encryption=\"%s\"", map["encmethod"] or "psk2"))

f:close()

f = io.popen(string.format("uci set wireless.@wifi-iface[-1].key=\"%s\"", map["ssid_pas"] or "123456"))

f:close()

f = io.popen(string.format("uci set wireless.@wifi-iface[-1].ssid=\"%s\"", map["ssid"] or "Openwrt"))

f:close()

end

function wifi_reload()

local f = io.popen("uci commit wireless")

f:close()

f = io.popen("wifi reload")

f:close()

end

POSTLength = tonumber(os.getenv("CONTENT_LENGTH")) or 0

if (POSTLength > 0) then

POST = io.read(POSTLength)

POST = url.parseQuery(POST)

wifi_set(POST)

end

io.write("saved changes,please waiting for the apply\n")

wifi_reload()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值