[英]JQuery misreading serverside csv file
我已經在Raspberry Pi上編寫了一個程序,以讀取GPIO輸入並將其寫入.csv文件,然后該文件由Javascript腳本讀取並顯示在Pi托管的網頁上。
Pi會每0.1秒輪詢一次針腳並寫入文件,腳本每0.2秒讀取一次此文件並更新網頁。
我遇到的問題是,有時腳本會將值讀取為全零,而不是保存在文件中的實際數字而不會引發任何錯誤。 這是隨機發生的,有時腳本確實可以正確讀取文件。 刷新頁面,重新啟動apache和重新啟動Pi似乎沒有任何效果。
腳本沒有返回錯誤的事實使我相信該問題在腳本獲取文件之前發生,但是在cat
中查看該文件會顯示正確的值。
有人有想法么?
相關的Javascript代碼:
var csv_path = "/data/loads.csv";
function update_vars() {
//get latest data
var response = $.get(csv_path, function(data) {
var csv_string = data;
var res = csv_string.split("\n")[1].split(",");
//parse values into variables
...
});
樣本文件內容:
TV,AC,Oven,Light,Solar,inverter,inverter(controlled)
1,3,2,6,0,0,0
示例Javascript日志輸出:
TV,AC,Oven,Light,Solar,inverter,inverter(controlled)
0,0,0,0,0,0,0
我最終通過用MySQL數據庫和php替換csv文件和javascript解決了這個問題。
現在,我的python使用php腳本向數據庫添加了一個條目,以選擇正確的值並顯示它們。 這樣做的好處是也不需要處理任何客戶端。
對於我的應用程序來說,這似乎有點過大了,但它似乎工作得更好,更不用說了解LAMP堆棧現在的副作用了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.