13

スタック オーバーフロー チャットのXMPP インターフェイスについては、現在、チャット メッセージの HTML を取得して有効な XML に変換し、それを XMPPオブジェクトのhtml子要素として設定しています。message私の Mac OS X jabber クライアントでは、これはうまく機能していました。これは、SO チャットのユーザーがワンボックス化された画像を投稿すると、その画像が XMPP クライアント (OS X の Adium) に表示されることを意味していました。

マイ・マインド・イズ・ブロー

しかし、私は Adium を最新バージョンに更新したところ、どうやら彼らは私が行っていることをセキュリティ ホールであり、XMPP 仕様に反していると見なし、その動作を変更したようです。彼らの理由は、XMPP はあなたの IP アドレスを明らかにすべきではなく、HTTP 経由で画像をフェッチすると私の IP アドレスが明らかになるというものでした。

そのため、チャットは XMPP を介してイメージレスになります。XMPP で画像を機能させるにはどうすればよいですか? XMPP コンポーネントは画像をダウンロードして<Message>スタンザに埋め込む必要がありますか? XMPP サーバーを介して画像をプロキシできますか? それともこれは不可能ですか?

4

3 に答える 3

6

Adium、iChat、および Pidgin はすべてXEP-0231をサポートしており、この目的のために画像を含むバイナリ データを提供することができます。基本的に、画像のソースとして一意の識別子を指定でき、他のクライアントはリクエストでデータをリクエストするかどうかを決定できます<iq>

私は python のTwistedでこれを扱ってきましたが、いくつかの不満に直面しています。私は、Adium と iChat が少なくともそれを使用してデータを要求していることを知っています。

于 2011-10-07T22:49:04.253 に答える
4

データに埋め込んでみてください: uriのように<img src="data:image/png;base64,VGhlIGltYWdlIGRhdGEgZ29lcyBoZXJlCg==" alt="some text" />

于 2010-11-16T20:44:06.583 に答える
0

ただのアイデア...

画像の URL を解析し、画像をダウンロードし、元の URL を表すファイル名 (ファイル名は元の URL のハッシュである可能性があります) を使用して一時フォルダーに配置し、メッセージ内の元の URL をこれらのファイル URL に置き換えますか?

もう 1 つのアイデアは、実際の URL を取得するローカル サーバーを用意することです。

于 2010-11-17T03:03:04.127 に答える