問題タブ [casablanca]
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.
c++ - casablanca ライブラリを介した github API とのやり取り
MFC フレームワークで Git クライアントを構築しています。github サーバーと接続してその API を使用するために、casablanca ライブラリを使用しています。Github のチュートリアルでは、認証のためにユーザー名とパスワードが添付されたリクエストを github サーバーに送信する方法を 1 つの例として示します:
https://developer.github.com/v3/#authentication
今、私はマイクロソフトのcasablancaで同じ効果を達成しようと試みましたが、構文を正しくすることができません:
これを呼び出した後、uri が無効であるという例外がカサブランカからスローされます。
githubサーバーに送信できるように、カサブランカでリクエストを適切に構築する方法はありますか?
ありがとうございました。
c++ - C++ REST SDK: 非同期タスクと C++11 マルチスレッド
これは、C++ REST SDK の非同期タスク機能に関する概念的な質問です (また、少し初歩的な質問でもあるかもしれません)。
基本的なアプリケーションでは、クライアントがあり、いくつかのリクエストを実行します。
(foo ループは、リクエストが頻繁に送信されることを示すためのものであり、コードでは実際には使用しません)。
質問:
私が理解している限りでは、非同期タスク ライブラリはこれらの着信要求を並列に処理します。つまり、メイン スレッドがすべてのタスクをイベントのような方法で処理するのではなく、ライブラリがいくつかの基になるスレッド プールにタスクを割り当てます。 (--私には透明ではありません--) 方法。私はそれを正しく理解しましたか?
前の見解が正しければ、REST SDK を C++ のマルチスレッド機能と組み合わせる理由はあります。たとえば、上記のループをもう一度取り上げると、10 個のスレッドを開始し、それぞれのプロセスで 10 回のループ反復を実行します。これは理にかなっていますか、それとも不要ですか?
さらに、一般的に、C++11 のマルチスレッド機能によって ppl 機能を組み合わせる必要がある一般的なパターンはありますか? それとも、内部の REST SDK と ppl がより良い仕事をしてくれると信頼しても安全でしょうか?
(情報: cpprest ディスカッション ページでもこの質問をしました。ただし、このフォーラムはもう維持されていないようです。)
c++ - C++ REST SDK (「カサブランカ」) での URI エンコーディング
C++ REST SDK 2.8の http リスナーを使用していますが、次のことに気付きました。このリスナーに次の URL を送信すると:
そして私は:
次に、v_path_componentsには 2 つの要素 ["my", "path"] が含まれ、m_query_componentsには 2 つのペア [("key","xxx"), ("yyy","zzz")] が含まれていることがわかります。
私が望むのは、v_path_componentsが 1 つの要素 ["my/path"] を含み、m_query_componentsが 1 つのペア [("key","xxx&yyy=zzz")] を含むことです。
後者を実現するために、relative_uriは uri をデコード/エンコードしないでください。情報が失われるからです。さらに、web::uri::decode()は、分割前ではなく、分割結果に対して実行する必要があります。しかし、REST SDK 自体とそれに付属する多くのサンプルが上記の方法でこれを使用しているため、私が間違っているのではないかと思います。
誰かが私の発見を確認したり、私が間違った方向に進んでいる理由を説明したりできますか?
c++ - when_any 関数について (C++ REST SDK)
こちらhttps://msdn.microsoft.com/en-us/library/jj969480.aspx
コードはこのようなものです
私の質問は
result_type はどこから来たのですか?
どうもありがとう
c++ - カサブランカ REST SDK C++ リスナー
最近、Java Spring を使用して REST サービスを作成しました。その中には、特定の各関数を異なる REST クエリにバインドするための注釈が含まれていました。ここでは技術的になりすぎないようにしましょう。擬似的に、次のようになりました。
現在、C++ で Casablanca SDK を使用して REST を実行するテストが与えられていますが、チェックしたすべてのチュートリアルで、単一の GET または POST 要求がカバーされています。カサブランカ SDK の Spring と同様に、複数のリクエストをカスタム ターゲットにバインドすることは可能ですか?
c++ - C++ Rest SDK カサブランカ シグトラップ
C++ Rest SDK ("Casablanca")を使用して、Websocket-Servers からフィードを受信しています。現在、 websocket_callback_client クラスを使用して、同時に実行されている 3 つの異なるサーバーへの 3 つの異なる接続があります。
プログラムは未定義の時間実行され、その後突然 を受け取りSIGTRAP, Trace/ Breakpoint trap
ます。これは次の出力ですGDB
。
18 行目で、ソース/pplx/threadpool.h:133が指定されています。これは、これらの行の周りのソース コードです。
明確にするために、m_service
はboost::asio::io_service
です。私には、133 行目で例外がスローされ、139 行目でキャッチされてから再スローされたように見えます。この時点で、私はそれを個人的にキャッチする必要があります。なぜなら、そうしないとpplx
-object がキャッチされない例外で破棄された場合、 が発生するからSIGTRAP
です。
これが私の研究で得られた距離です。問題は、これがどこで起こっているのか手がかりがないことです。データが送受信されるすべての位置を囲みましたwebsocket_callback_client
がtry {} catch(...){}
、それはまだ起こっています。
以前にこのライブラリを使用したことがある人が私を助けてくれるかもしれません。