Javascript 更新网页上Web服务器程序的实时输出
更具体地说,我想从运行在Web服务器(Linux/Raspberry Pi)上的GPSd进程中获取当前/最新的输出,并显示实时的lat/lon、速度和航向 我试着编写一个可以调用的CGI脚本(jquery),它跟踪gpspipe的输出并获取最新数据,但这有点慢——每次调用最多5秒 有点类似于调用一个CGI脚本,它每隔几秒钟运行一次“top-b-n1”,并解析您要查找的数据的输出Javascript 更新网页上Web服务器程序的实时输出,javascript,jquery,html,gpsd,Javascript,Jquery,Html,Gpsd,更具体地说,我想从运行在Web服务器(Linux/Raspberry Pi)上的GPSd进程中获取当前/最新的输出,并显示实时的lat/lon、速度和航向 我试着编写一个可以调用的CGI脚本(jquery),它跟踪gpspipe的输出并获取最新数据,但这有点慢——每次调用最多5秒 有点类似于调用一个CGI脚本,它每隔几秒钟运行一次“top-b-n1”,并解析您要查找的数据的输出 我认为有人会有一种更有效的方法。取决于GPS单位转换值所需的时间(通常大约一秒左右) 您可以执行一个小程序,不断读取G
我认为有人会有一种更有效的方法。取决于GPS单位转换值所需的时间(通常大约一秒左右) 您可以执行一个小程序,不断读取GPS,并将值存储在共享内存或文件中,然后在调用Rasp时获取这些值。因此,您将获得[时间+地理位置],这将根据您的应用程序有所帮助 如果你想要更灵敏的东西,你可以在GPS转换完成后使用。这样,您就可以注册多个客户端或服务来收听GPS转换web服务。有适合您的服务。它有一个线程适配器,您可以使用它在需要时以何种方式获取数据。分四行:
from agps3threaded import AGPS3mechanism
然后,将螺纹三面啮合
agps_thread = AGPS3mechanism() # This instantiate the mechanism, as I believe it's called.
agps_thread.stream_data() # Stream the data from host, port, devicepath.
agps_thread.run_thread() # Iterate stream as a thread with throttle control for empty look ups.
四行代码,用于连接、通信和控制gpsd的大部分功能
while True: # All data is available via instantiated thread data_stream attributes. Confur
# lines #140-ff of the client /usr/local/lib/python3.5/dist-packages/gps3/agps.py
print('----------------')
print( agps_thread.data_stream.time)
print('Lat:{} '.format(agps_thread.data_stream.lat))
print('Lon:{} '.format(agps_thread.data_stream.lon))
print('Speed:{} '.format(agps_thread.data_stream.speed))
print('Course:{}'.format(agps_thread.data_stream.track))
print('----------------')
sleep(60) # Sleep, or do other things for as long as you like.
如果括号之间没有参数,线程化客户端默认为host='127.0.01'
、port=2947
、gpsd_protocol='json'
、和usnap=0.2
,在每次空套接字查找后,默认值为2/10秒的微nap。
项目的其余部分在中,或记录在中
如果您正在寻找,也可以使用我想打电话获取您的地理坐标几乎是即时的。你有没有发现是什么在消耗你的5秒钟?考虑到良好的网络质量,我不明白为什么不能在不到一秒的时间内进行多个调用。GPSpipe连接到gpsd端口,等待数据并打印数据。然后我必须等待包含我需要的数据的正确句子类型,然后解析该行。也许有一种比使用gpspipe和shell脚本更快的方法,比如像这样编写python客户端。。。但这又如何呢:我已经运行了一个MQTT服务来分发传感器数据。我可以编写一个gps客户端(Python),将gps数据发布到MQTT主题,然后使用javascript MQTT客户端侦听更新。我已经在我的网页上显示了来自MQTT的传感器数据,所以这将是一个简单的添加,使用我当前的技术。谢谢!这可能是一个更好的解决方案。现在我正在读串口,得到原始的GPS语句。