問題タブ [protobuf.js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
783 参照

c# - 実行時にプロト スキーマを作成しますか?

私は protobuf.net をその機能でしばらく使用してきましたIExtensible(ランタイム プロト メッセージ ストリームを作成できます)。proto残念ながら、 Extensible クラスからスキーマを抽出する機能はないようです。protobuf.js でメッセージ ストリームを読み取るのが少し簡単になるように、この機能が必要です。

Extensible/dynamic クラスの proto スキーマを生成する方法はありますか?

0 投票する
1 に答える
1087 参照

javascript - Protobuf : WebApi -> JS - デコードされたオブジェクトは空です

リクエストWebApiを介してコントローラーから Html ページにオブジェクトを送信したいと考えています。Ajax

JS でオブジェクトを受け取ると、それは空です。しかし、サーバー側では、オブジェクトを見るとbyte[].length0 より大きいため、オブジェクトは空ではありません。

  • サーバー側では、Google が提供する dllを使用します。
  • JS 側では、ProtobufJS ライブラリを使用します。これは私の.protoファイルです:

    • サーバーコード:

      コンテナ.Models.Add(モデル);

    • Base64 データ:

    ChEKBFRlc3QQARkfhetRuB4JQA==

    • JS デコード:

      /li>
    • JS コンソールの結果オブジェクト:

      /li>
    • bytebuffer.js

    • protobuf.js v5.0.1
0 投票する
1 に答える
4929 参照

javascript - protobufjs を使用した基本的な typescript の例

現在、typescript プロジェクトでいくつかのプロトコル バッファ変換を実装しています。ProtoBuilder に読み込まれた proto ファイルを取得し ( protobufjs.d.ts の typescript 定義ファイルを使用)、ビルダーからProtoBufを返しました。

pb という名前の変数に ProtoBuf オブジェクトを格納した後でブレークポイントを設定すると、コンソールで pb.decode(buffer) を呼び出すことができ、機能します。しかし、TypeScript はこの構文が好きではありません。

次のようなことを試すなど、多くの突っ込んだり突っ込んだりした後:

(これにより、エラー TS2349 型に呼び出しシグネチャがない式を呼び出すことはできません) が発生します。

コードのような TypeScript コンパイラをまだ取得できません。

TypeScript ProtoBuf オブジェクトから MetaMessage オブジェクト内に埋め込まれたデコード関数に到達するにはどうすればよいですか?

問題があれば、私は Visual Studio 2015 でこれを行っています。

編集:次を使用して問題を回避できます:

しかし、もしあれば、よりエレガントなソリューションを好むでしょう。

0 投票する
1 に答える
2335 参照

javascript - protobuf base64 文字列を js オブジェクトにデコードする方法

サーバー側 (base64 文字列) からの protobuf メッセージを javascript オブジェクトにデコードしようとしています。protobuf.jsのデコードに使用します。

ドキュメントが示唆するように:

これは私がそれをやろうとする方法です(データ-base64文字列):

エラーが発生します

デコード/decode64 未定義

0 投票する
1 に答える
4302 参照

node.js - 整数の代わりに列挙型文字列を出力するように protobuf.js を取得する方法

Node.js 4.4.5 で最新のprotobuf.jsを使用しています。

protobuf.js現在、整数ではなく列挙型の文字列定義を出力するのに苦労しています。いくつかの提案を試しましたが、どれもうまくいきませんでした:

protobuf.js最初のAPIの変更が原因だと思います。2 つ目については、提案された解決策を部分的に使用できますが、メッセージが他のメッセージ内にネストされている場合、文字列値が明示的に設定されていても、ビルダーは整数値の使用にフォールバックするようです。

理想的には、列挙値を生成するために使用される関数を上書きしたいのですが、デバッガーで正しいものを見つけるのに苦労しています。または、深くネストされたオブジェクトに対してこれを達成するためのより良い方法はありますか?

0 投票する
1 に答える
549 参照

javascript - Javascript ByteBufferからbase64文字列への画像が返されない

Intel XDK で HTML5 アプリを作成しているため、計算は Javascript で行われます。

ケース: サーバーから (google) protobuf メッセージを取得する。それを解析してオブジェクトにします。jpg という画像があります。それをHTMLに入れます。ねえ、そのためにbase64を使用できます... Androidでこれを行いました。BitmapFactory を使用できます。

いくつかのgoogle-fuが次のようなものを見つけた後:

ここに問題があります:画像が表示されません: リンク切れの画像が表示されます。ただし、上記の最初の関数を使用してもエラーは発生しません。私が間違っていると思うのは、オフセットです。データ構造は次のようになります。

HTML への設定は次のように行われ、動作します。他の base64 文字列でテストしました。

0 投票する
2 に答える
127 参照

javascript - Javascript で参照によって変数に値を割り当てることはできません

ProtoBuf ロード関数内の変数 IMLoginReq に値を割り当てたいのですが、うまくいきません。