4

マルチクライアント チャット サーバーの問題に関連するリストがあります。これはリスト ['talk', client_n, message] です。transport.write() を使用してツイスト python のサーバーから「メッセージ」を「client_n」に送信するにはどうすればよいですか?

私は2つの方法でコードを書きました。しかし、どちらも機能していません。

最初の方法:

  data = data.strip()
  dat1 = data.split()
  dat2 = ' '.join(dat1)
  l = dat2[5:12]
  m = dat2[13:]
  l.transport.write(m)

2 番目の方法:

 data = data.strip()
 dat1 = data.split()
 l1 = dat1[1]
 m1 = dat1[2]
 if l1 in self.factory.clients:
    l1.transport.write(m1)

しかし、両方で属性エラーが発生しました。

exceptions.AttributeError: 'str' object has no attribute 'transport'

誰でも私にこれに対する解決策を教えてもらえますか?

4

2 に答える 2

6

self.factory.clients とは? もしかして辞書ですか?あなたは本当に次のようなことをしたいですか:

client = self.factory.clients.get(client_n)
if client:
    client.transport.write(message)
于 2011-12-02T01:00:53.657 に答える
0

私は専門家ではありませんが、JSONを使用してリストをシリアル化および逆シリアル化することを検討する必要がありますか?

于 2011-11-30T12:38:44.720 に答える