我正在嘗試爲Matlab構建一個lightstreamer客戶端。對於像JAVA,Python,.Net等平臺,確實存在一些庫。但不幸的是不是Matlab。 但是,事實證明,這些客戶端實現中的大部分都使用與lightstreamer完全相同的文本模式協議,這是非常基本的HTTP請求。用於Matlab的Lightstreamer客戶端
我想出瞭如何建立/關閉lightstreamer會話。我得到sessionId,我可以使用這個id來訂閱我想要流的數據。但是,儘管我確實收到了訂閱呼叫的有效回覆,但沒有推送任何數據。
我使用urlead2功能和響應似乎罰款:
[output,extras] = urlread2([lightstream_url,'/lightstreamer/control.txt'],'POST',body,headers);
allHeaders =
Response: {'HTTP/1.1 200 OK'}
Server: {'Lightstreamer'}
Content_Type: {'text/plain; charset=iso-8859-1'}
Cache_Control: {'no-store' 'no-cache'}
Pragma: {'no-cache'}
Expires: {'Thu, 1 Jan 1970 00:00:00 GMT'}
Date: {'Wed, 8 Apr 2015 11:15:02 GMT'}
Content_Length: {'4'}
狀態=
value: 200
msg: 'OK'
isGood =
1
輸出=
OK
這是正確的響應體內含有「OK」,這是記錄(documentation, page 20ff.),但應該是流數據本身爲好,不是嗎?
那麼如何獲得實際數據呢?
我發現在瀏覽器中使用整個URL查詢導致以下lightstream響應錯誤:「SYNC ERROR」。也許這提供了一個提示? – flimm
在回答之後,我意識到你可能已經在觀察數據流的正確響應了,如果是這樣的話,那麼可能是因爲沒有數據流?你有沒有要求提供快照?你在控制服務器嗎? – Mone