我想在树莓皮上创建一个本地网页,并能够使用该页面在wifi网络之间切换。
从哪里开始获取可用SSID的列表和相关信息?(目前,我还没有选择一种语言,但会考虑Perl、python或JavaScript)
命令sudo iwlist wlan0 scan
列出了PI可用的WiFi网络。
sudo
用于允许常规用户帐户的超级用户(root)访问。
您应该使用visudo
命令来编辑sudo配置文件。使用任何其他命令或编辑器都可能使sudo不可用,并将您锁定在任何root访问之外!
此行:
www-data ALL=(ALL) NOPASSWD:/sbin/iwlist wlan0 scan
应允许您的Web服务器用户访问SSID list命令。
现在,任何脚本(包括bash)都可以获得SSID:列表
#!/usr/bin/perl
use strict;
use warnings;
open my $iwlist_fh,'-|','sudo iwlist wlan0 scan';
while (<$iwlist_fh>) {
print "SSID $1 foundn" if /ESSID:"(.+)"/;
}
close $iwlist_fh;
注意:iwlist命令可能需要几秒钟(或更长时间)才能运行。您可能希望异步获取列表。