socket.ioを使用してクライアントからサーバーに画像をアップロードすることは可能ですか?
質問する
6666 次
2 に答える
5
WebSocketの仕様では、WebSocketはバイナリデータをArrayBufferとして送信できる必要があると規定されていますが、これはブラウザーでは十分にサポートされていません。Socket.ioは文字列の送信に制限されていますが、Base64でエンコードされたデータを送信できます。したがって、canvas toDataUrl()メソッドを使用して画像をbase64として取得すると、すべて設定されます。これは、このテーマに関するすばらしい記事です。
于 2012-04-14T23:51:21.537 に答える
2
File Stack https://www.filestack.com/のようなものを使用することをお勧めします。クライアントのユーザーは、画像をs3バケットにアップロードし、コールバックで画像へのURLを受け取ることができます。次に、URLだけをsocket.ioに送信できます。私が行っているプロジェクトでは、実際にこれを実装しました。このプロジェクトでは、パフォーマーが画像をアップロードして、部屋の人々と共有することができます。基本的に、彼らはそれをfilepicker経由でアップロードし、URLを取得し、socket.io経由でURLを送信してから、サーバー上のsocket.ioがそれを部屋の全員にブロードキャストします。
于 2013-08-13T00:46:04.240 に答える