私はC++を使用してwebsocketクライアントを実装する必要があります。私はすでにRubyを使って基本的なwebsocketサーバーを作っています。しかし今、私はc/C++を使って接続をテストしたいと思っています。 c/C++でWebソケットを実装するのに利用できるライブラリを簡単に使用できますか?Websocketクライアント(C++)
ありがとうございます。
私はC++を使用してwebsocketクライアントを実装する必要があります。私はすでにRubyを使って基本的なwebsocketサーバーを作っています。しかし今、私はc/C++を使って接続をテストしたいと思っています。 c/C++でWebソケットを実装するのに利用できるライブラリを簡単に使用できますか?Websocketクライアント(C++)
ありがとうございます。
boost :: asioとPoco.Netなどがありますが、C-APIのバークレーソケットはそれほど難しくないので、これらのライブラリを使用したくない場合は、それらのライブラリを参照してください。
編集:申し訳ありませんが、おそらく "websockets"に間違っています。あなたはここを見ましたか? http://en.wikipedia.org/wiki/Comparison_of_WebSocket_implementations (Simple C++ WebSocket Client (draft 08+ compatible)?から)
Websocket ++はあなたのためにする必要があります。
サーバー/クライアントが実装するWebsocketのバージョンが重要であることはわかっていますが。
多くの検索の後、私はPOCOの上に座っているこの便利なプロジェクトを見つけました。私はそれを試して、私の経験と一緒に投稿するつもりです。
https://github.com/hannon235/socket.io-poco/blob/master/examples/TestClient/main.cpp
更新:
は、あまりにも多くの時間のために、このライブラリを統合しようとしました。現在完全には焼かれていません。プロダクション環境で使用するには、より多くの作業が必要です。
多分それはまだ有用であるかもしれません。
Cで開発された良いwebsocketライブラリがあります。 websocketを作成して処理する方法の例がいくつかあります。
http://libwebsockets.org/trac/libwebsocketsまたは https://github.com/warmcat/libwebsockets
(詳細は)偉大なライブラリがここにあります、Boost.Asioに大きく構築さBeast.WebSocket: http://vinniefalco.github.io/
はここでのWebSocketを語るプログラム例です:
#include <beast/websocket.hpp>
#include <beast/buffers_debug.hpp>
#include <boost/asio.hpp>
#include <iostream>
#include <string>
int main()
{
// Normal boost::asio setup
std::string const host = "echo.websocket.org";
boost::asio::io_service ios;
boost::asio::ip::tcp::resolver r(ios);
boost::asio::ip::tcp::socket sock(ios);
boost::asio::connect(sock,
r.resolve(boost::asio::ip::tcp::resolver::query{host, "80"}));
using namespace beast::websocket;
// WebSocket connect and send message using beast
stream<boost::asio::ip::tcp::socket&> ws(sock);
ws.handshake(host, "/");
ws.write(boost::asio::buffer("Hello, world!"));
// Receive WebSocket message, print and close using beast
beast::streambuf sb;
opcode op;
ws.read(op, sb);
ws.close(close_code::normal);
std::cout <<
beast::debug::buffers_to_string(sb.data()) << "\n";
}
私はBoostバージョン:1.53.0を持っています。私は致命的なエラーを受けています:boost/beast/websocket。hpp:そのようなファイルやディレクトリはありません。 – AMB
あなたはBoost 1.58.0以降が必要です。あなたのインクルードパスにbeast/includeディレクトリを追加する必要があります。 –
私は最新のブーストをダウンロードし、それで獣を見つけることができません。とにかくブーストと獣をダウンロードしてコードをコンパイルしようとしましたが、多くのエラーが発生しましたので、今度はeasywsclientでテストします。 idk何が間違っていた、それはいくつかの.hppファイルが悪い投稿完全なエラー明日、WebSocketクライアントを実行する方法について、ステップバイステップでなければならないと言いました。ありがとう – AMB
くそ、私は人々が_C/C++ _を書くとき、あなたの心を作ります、_C_または_C++ _を使用していますか? **同じ言語ではありません**。 – ApprenticeHacker
私はあなたに同意します..しかし、クライアントはcまたはC++のいずれかでデモを求めています。そのために残念。 :-) – hbdev012
問題ありません。笑。 – ApprenticeHacker