2017-08-31 6 views
3

wolkenkitもREST APIを提供していると聞きましたが、それに関するドキュメントは見つかりませんでした。私は情報源をふるいにかけ、これをどうやって行うかについていくつかの兆候を見出しました。読み込みモデルリストを取得するためのWolkenkit REST APIがハートビートエントリを返します

私は、CLIからの要求を行うためHTTPieを使用しています:

$ http post https://local.wolkenkit.io:3500/v1/read/lists/labels 

HTTP/1.1 200 OK 
Access-Control-Allow-Origin: * 
Cache-Control: no-store, no-cache, must-revalidate, proxy-revalidate 
Connection: keep-alive 
Date: Wed, 30 Aug 2017 21:08:07 GMT 
Expires: 0 
Pragma: no-cache 
Surrogate-Control: no-store 
X-FRAME-OPTIONS: DENY 
X-Powered-By: Express 
X-XSS-Protection: 1; mode=block 
content-type: application/json 
transfer-encoding: chunked 

{"name":"heartbeat"} 
{"label":"first","id":"baa1b2b6-ab85-4929-a488-0cae622de20a","isAuthorized":{"owner":"anonymous","forAuthenticated":false,"forPublic":true}} 
{"label":"second","id":"7fc6c3c9-3285-4292-b3db-6d88ca90a347","isAuthorized":{"owner":"anonymous","forAuthenticated":false,"forPublic":true}} 

を私は私のlabel readModelで2つのエントリを持っていますが、第三1 {"name":"heartbeat"}があるように見えます。それはどこから来て、それはどういう意味ですか?

これはバグですか?このエントリは誤って作成されている可能性がありますか?

答えて

2

免責事項:私はwolkenkitの開発者の一人です。

これは実際にはバグでもない、でもあなたはボンネットの下に;-)に誤っ

をエントリを作成しなかった私たちはHTTP経由でJSONをストリームし、我々はいくつかのプロキシサーバー(および同様のもの)が生じたことを経験していました2つのデータパケットの間に長い休止があったときに問題が発生します。

過去には、読んだモデルが何回配信されるかを変更しましたが、これは実際にはまだ必要ではないと思いますので、これは過去のものです。 (私たちはイベントルートを話していた場合は、話が違うだろう、ここではそれが必要な、まだ確かである。)

我々はボンネットの下に使用するライブラリで、json-lines-client、我々はハートビート・イベントをフィルタリング:

const isNotHeartbeat = function (data) { 
    const keys = Object.keys(data); 

    return !(
    (keys.length === 1) && 
    (keys[0] === 'name') && 
    (data.name === 'heartbeat') 
); 
}; 

は、現時点では

source code of json-lines-client 0.7.9から撮影したもの)、私は(そこに時間をかけて複数のこと、そして彼らもあなたは、単にこれらのイベントを無視するように、自分のコードに同様のロジックを導入することをお勧めしたいです最初のものである必要はありません)。

+2

あなたの答えに感謝します。私がwelckkit app用に公然と消耗するapiを提供したいのであれば、受け取ったデータを後処理する必要性は最高のユーザーエクスペリエンスではないと感じています。おそらく、コマンドを送信するための[Wolkenkit REST API]が[不正なコマンドを返す] [https://stackoverflow.com/questions/45976596/wolkenkit-rest-api-for-sending]に関連するカスタム残りのapiを構築するための仕組みが必要です-commands-returns-malformed-command/45978688#45978688) – Alp

+1

合意しました。これは最高のUXではありません。私たちはこれを詳しく見なければならないので、私たちがこれを世話するときはまだ約束できませんが、これを私たちのtodoリストに追加します。これを指摘してくれてありがとう –

関連する問題