当前位置: 首页 > news >正文

openwrt开发包含路由器基本功能的web问题记录

1.这里的扫描怎么实现的先找一些luci代码,在openwrt21版本后,luci用js替换了lua写后台,先找一些代码路径

在openrwt15这部分代码是在这个目录下

feeds/luci/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm

里面包含了html和lua,我们看一些lua部分是怎么实现的,直接copy代码

#!/usr/bin/luadev = arg[1]
local sys = require "luci.sys"
local utl = require "luci.util"
local iw = luci.sys.wifi.getiwinfo(dev)function scanlist(times)local i, k, vlocal l = { }local s = { }for i = 1, times dofor k, v in ipairs(iw.scanlist or { }) doif not s[v.bssid] thenl[#l+1] = vs[v.bssid] = trueendendendreturn lendfunction format_wifi_encryption(info)if info.wep == true thenreturn "WEP"elseif info.wpa > 0 thenreturn string.format("Pairwise: %s / Group: %s >%s - %s",table.concat(info.pair_ciphers, ", "),table.concat(info.group_ciphers, ", "),(info.wpa == 3) and string.format("mixed WPA/WPA2")or (info.wpa == 2 and "WPA2" or "WPA"),table.concat(info.auth_suites, ", "))elseif info.enabled thenreturn unknownelsereturn openendendfor i, net in ipairs(scanlist(3)) donet.encryption = net.encryption or { }print("channel:",net.channel);print("ssid:",net.ssid);print("bssid:",net.bssid);print("Mode:",net.mode);wep=net.encryption.wep and 1 or 0print("Encryption:",format_wifi_encryption(net.encryption));print("");
end

使用方法:

root@OPENWRT:~# ./test.lua ra0

openwrt21之后代码路径变为了如下:

feeds/luci/modules/luci-base/htdocs/luci-static/resources/network.js

feeds/luci/docs/jsapi/network.js.html

大概代码是这样子,看不懂,截取部分,用过调用ubus命令得到数据

	 */getMeshID: function() {if (this.getMode() != 'mesh')return null;return this.ubus('net', 'config', 'mesh_id') || this.get('mesh_id');},/*** Get the configured BSSID of the wireless network.** @returns {null|string}* Returns the BSSID value or `null` if none has been specified.*/getBSSID: function() {return this.ubus('net', 'config', 'bssid') || this.get('bssid');},

类似这样:ubus call iwinfo info '{ "device": "wlan0" }'

2.虚拟机给路由器开发板传文件,确保虚拟机已安装ssh

scp  + 虚拟机里面要传的文件  + 开发板用户名@开发板ip地址:开发板放文件的路劲

 scp  mongoose root@192.168.1.1:/bin

相关文章:

openwrt开发包含路由器基本功能的web问题记录

1.这里的扫描怎么实现的先找一些luci代码,在openwrt21版本后,luci用js替换了lua写后台,先找一些代码路径 在openrwt15这部分代码是在这个目录下 feeds/luci/modules/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm 里面包含…...

HarmonyOS ArkTS 骨架屏加载显示(二十五)

目录 前言1、骨架屏代码显示2、代码中引用3、效果图展示 前言 所谓骨架屏,就是在页面进行耗时加载时,先展示的等待 UI, 以告知用户程序目前正在运行,稍等即可。 等待的UI大部分是 loading 转圈的弹窗,有的是自己风格的小动画。其实…...

Ruoyi-Cloud-Plus_使用Docker部署分布式微服务系统_环境准备_001---SpringCloud工作笔记200

1.首先安装docker: 如果以前安装过首先执行: yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine 去卸载docker 2.安装dokcer需要的工具包…...

RN封装的底部向上弹出的弹出层组件

组件代码 import React from react; import { View, StyleSheet, Modal, TouchableOpacity, Text, TouchableWithoutFeedback } from react-native;const BottomPopup ({ visible, onClose, children, leftButtonTitle, rightButtonTitle, onLeftButtonPress, onRightButtonP…...

基于深度学习YOLOv8+PyQt5的水底海底垃圾生物探测器检测识别系统(源码+数据集+配置说明)

wx供重浩:创享日记 对话框发送:323海底 获取完整源码7000张数据集配置说明文件说明远程操作配置环境跑通程序 效果展示 基于深度学习YOLOv8PyQt5的水底海底垃圾生物探测器检测识别系统设计(源码数据集配置文件) 各文件说明 程序运…...

SpringBoot集成WebSocket实现简单的多人聊天室

上代码—gitee下载地址: https://gitee.com/bestwater/Spring-websocket.git下载代码,连上数据库执行SQL,就可以运行,最终效果...

如何使用固定公网地址远程访问内网Axure RP生成的网站原型web页面

文章目录 前言1.在AxureRP中生成HTML文件2.配置IIS服务3.添加防火墙安全策略4.使用cpolar内网穿透实现公网访问4.1 登录cpolar web ui管理界面4.2 启动website隧道4.3 获取公网URL地址4.4. 公网远程访问内网web站点4.5 配置固定二级子域名公网访问内网web站点4.5.1创建一条固定…...

蓝桥杯习题

https://www.lanqiao.cn/problems/1265/learning/ 第一题---排序 给定一个长度为N的数组A,请你先从小到大输出它的每个元素,再从大到小输出他的每个元素。 输入描述: 第一行包含一个整数N 第二行包含N个整数a1,a2,a3,...an,表…...

AMS概念以及面试相关整理

1、ActivityManagerService是什么?什么时候初始化的?有什么作用? ActivityManagerService(AMS)是什么? ActivityManagerService(简称AMS)是Android操作系统中的一个核心服务&#…...

Vmware下减小Ubuntu系统占用系统盘大小

1、虚拟机设置下占用空间 如图,给虚拟机分配了120GB,已经占用116.9GB,开机会提示空间不足。 2、实际使用空间 ubuntu系统下使用“df -h”命令查看实际使用空间大小50GB左右 造成这个原因是,虚拟机的bug:在虚拟机的ub…...

面试题-Elasticsearch集群架构和调优手段(超全面)

对于Elasticsearch(ES),我了解并有经验。在我之前的公司,我们有一个相对大型的ES集群,以下是该集群的架构和一些调优手段的概述: 1. 集群架构 集群规模:我们的ES集群由15个节点组成&#xff0c…...

python基础练习题6

1、找出10000以内能被5或6整除,但不能被两者同时整除的数(函数) def find_numbers(m,n):result []for num in range(m,n):if (num % 5 0 or num % 6 0) and not (num % 5 0 and num % 6 0):result.append(num)return resultprint(find_…...

Chrome 插件各模块使用 Fetch 进行接口请求

Chrome 插件各模块使用 Fetch 进行接口请求 常规网页可以使用 fetch() 或 XMLHttpRequest API 从远程服务器发送和接收数据,但受到同源政策的限制。 内容脚本会代表已注入内容脚本的网页源发起请求,因此内容脚本也受同源政策的约束,插件的来…...

内存可见性

内存可见性 一:内存可见性1.2: 二:解决内存可见性问题2.1 volatile关键字2.2:synchronized关键字解决内存可见性问题 一:内存可见性 public class Demo1 {public static int count 0;public static void main(String[] args) throws InterruptedException {Thread t1new Thre…...

Android room 在dao中不能使用挂起suspend 否则会报错

错误&#xff1a; Type of the parameter must be a class annotated with Entity or a collection/array of it. kotlin.coroutines.Continuation<? super kotlin.Unit> $completion); 首先大家检查一下几个点 一、kotlin-kapt 二、 是否引入了 room-ktx 我是2024年…...

【stable diffusion扩散模型】一篇文章讲透

目录 一、引言 二、Stable Diffusion的基本原理 1 扩散模型 2 Stable Diffusion模型架构 3 训练过程与算法细节 三、Stable Diffusion的应用领域 1 图像生成与艺术创作 2 图像补全与修复 3 其他领域 四、Stable Diffusion的优势与挑战 &#x1f449;优势 &#x1f…...

数据链路层之信道:数字通信的桥梁与守护者

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢&#xff0c;在这里我会分享我的知识和经验。&am…...

SQL109 纠错4(组合查询,order by..)

SELECT cust_name, cust_contact, cust_email FROM Customers WHERE cust_state MI UNION SELECT cust_name, cust_contact, cust_email FROM Customers WHERE cust_state IL ORDER BY cust_name;order by子句&#xff0c;必须位于最后一条select语句之后...

Spring Boot + Vue 实现文件导入导出功能

文章目录 1、概述2、后端实现&#xff08;Spring Boot&#xff09;3、前端实现&#xff08;Vue&#xff09;4、总结 1、概述 ​ 在现代Web应用开发中&#xff0c;文件的导入导出是一个常见的需求。Spring Boot作为后端开发的强大框架&#xff0c;搭配前端框架Vue&#xff0c;可…...

vue watch 深度监听

vue2文档&#xff1a;API — Vue.js vue3文档&#xff1a;侦听器 | Vue.js watch 可以用来监听页面中的数据&#xff0c;但如果监听的源是对象或数组&#xff0c;则使用深度监听&#xff0c;强制深度遍历源&#xff0c;以便在深度变更时触发回调。 一&#xff0c;监听 <t…...

Qt源码调试步骤记录

1.源码&#xff1a; 两种方式&#xff0c;要么安装qt时选择source&#xff0c;要么从官网下载源码&#xff0c;然后在qt creator中设置路径。二选一即可。我选的第二种。 1.1.第一种&#xff0c;安装时选择source&#xff1a; 1.2.第二种&#xff0c;下载源码设置路径&#x…...

大数据面试英文自我介绍参考(万字长文)

发现有一个怪圈,如果码农年龄35+,除非非常匹配,不然在国内企业筛选可能就筛选不过。国外码农可以干到40+、50+。一些外企,对年龄35+的码农依然青睐。这些外企对英文是有要求,通常是要英文自我介绍,下面提供一些英文自我介绍参考。 参考1: Good morning/afternoon, I a…...

外包干了5天,技术退步明显.......

先说一下自己的情况&#xff0c;大专生&#xff0c;18年通过校招进入杭州某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了四年的功能测…...

Docket常见的软件部署1

1 安装MySQL # 查看MySQL镜像 docker search mysql # 拉起镜像 docker pull mysql:5.7 # 创建MySQL数据映射卷&#xff0c;防止数据不丢失 mkdir -p /hmoe/tem/docker/mysql/data/ # 启动镜像 docker run -d --name mysql -e MYSQL_ROOT_PASSWORD123456 -p 3306:3306 -v /home…...

Qt源程序编译及错误问题解决

Error 5 while parsing C:/qt-everywhere-src-6.6.2/qt-build/qtdeclarative/src/qmlmodels/meta_types/qt6qmlmodels_release_metatypes.json: illegal value .json 文件为空文件0字节&#xff0c;加 “[]”&#xff0c;不要引号。可以解决这类错误。 Qt编译 Qt for Windows…...

作业练习(python)

第一题&#xff1a; cel eval(input()) fah 9 / 5 * cel 32 print("%.1f" % fah) 第二题&#xff1a; radius, length eval(input()) area radius * radius * 3.14159267 volume area * length print("%.2f" % area) print("%.2f" …...

Wireshark使用相关

1.wireshark如何查看RST包 tcp.flags.reset1 RST表示复位&#xff0c;用来异常的关闭连接&#xff0c;在TCP的设计中它是不可或缺的。发送RST包关闭连接时&#xff0c;不必等缓冲区的包都发出去&#xff08;不像上面的FIN包&#xff09;&#xff0c;直接就丢弃缓存区的包发送R…...

相机标定学习记录

相机标定是计算机视觉和机器视觉领域中的一项基本技术&#xff0c;它的主要目的是通过获取相机的内部参数&#xff08;内参&#xff09;和外部参数&#xff08;外参&#xff09;&#xff0c;以及镜头畸变参数&#xff0c;建立起现实世界中的点与相机成像平面上对应像素点之间准…...

CSS 滚动条样式修改

1、滚动条整体部分 使用 ::-webkit-scrollbar 注意&#xff1a;这个必须要加&#xff0c;不然修改的样式不生效 ::-webkit-scrollbar {width: 10px;//修改滚动条宽度 }2、滚动条中的滑块 使用 ::-webkit-scrollbar-thumb ::-webkit-scrollbar-thumb {border-radius: 8px;b…...

谈谈配置中心?

配置中心可以做集中式的服务配置管理&#xff0c;比如配置一些数据库连接的URL&#xff0c;一些共用的配置且可动态调整的参数。如果不采用集中式的管理&#xff0c;会导致修改起来特别麻烦&#xff0c;一个个的修改特别繁琐。 Nacos Config配置中心中采用的是客户端拉取数据&a…...

中移建设招标网站/黄页引流推广链接

文章目录词法分析正则表达式正则表达式的定义正则语言RE的代数定律正则定义例一例二有穷自动机FA的典型例子FA模型FA的表示FA定义(接受)的语言*最长子串匹配原则*有穷自动机的分类FA的分类*确定的有穷自动机* ( *DFA*)非确定的有穷自动机DFA与NFA的等价性带有“ε -边”的NFA从…...

wordpress 更换模板/鹤壁搜索引擎优化

1.java.lang.Object类的说明: 1.Object类是所Java类的根父类 2.如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类 3.Object类中的功能(属性、方法)就具通用性。 属性:无 方法:equals() / toString() / getClass() /hashCode() / clone() …...

湘潭做网站口碑好磐石网络/黑帽seo优化推广

没有主键可以在表上自己设置一个primary key 即可&#xff0c;至于java.lang.Object &#xff0c;因为我这个只有两个选项&#xff0c;我选择了序列化的&#xff0c;然后改动了表&#xff0c;目前没有什么更好的办法了&#xff0c;如果那个大神可以有更好的&#xff0c;可以留言…...

文做网站/新闻头条今日要闻国内

自助选座步骤分为&#xff1a;1、选择区域 ——> 2、 选择座位 ——> 3、 结账详细介绍如下&#xff1a;步骤一&#xff1a;选择区域在演出信息页选择场次(图1)&#xff0c;并点击在线选座&#xff0c;进入选择区域页面(图2)&#xff1b;选择观看演出的所需区域&#xff…...

网站建设难么/短视频广告投放平台

MD5对一个东西加密 可以认为是不可还原的 1.客户端加密 服务端看md5是不是和数据库一致 2.服务端加密 再看和db是否一致 1的情况 网络传的是md5 2 传密码 post是怎么加密的? 有的时候 我们需要和flash交互 这就涉及到数据的交互 flash给我们提交数据 我们往处理后…...

dede网站模板怎么安装教程/汕头网站建设方案优化

wdcp非常简单 非常好用但是有时候需要一些自定义配置的时候就不方便了1.去掉public_html 在安装有的程序的时候必须去掉这个 比如osa开源运维软件的时候方法 新建网站后 点击文件管理 选择--> 虚拟主机站点文件(nginx,apache) 根据你的web决定服务器然后找到对应的站点文件 …...