私はPythonでいくつかのコードを見ていました(私はPythonについて何も知りません)そして私はこの部分に出くわしました:
def do_req(body):
global host, req
data = ""
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host, 80))
s.sendall(req % (len(body), body))
tmpdata = s.recv(8192)
while len(tmpdata) > 0:
data += tmpdata
tmpdata = s.recv(8192)
s.close()
return data
これは、後で500,000バイトを超えるような巨大なサイズの本体で呼び出されます。これは、デフォルトの8190バイトの最大リクエストサイズを持つApacheサーバーに送信されます。
s.sendall()
私の質問は、「 」の部分で何が起こっているのかということです。もちろん、全身を一度に送ることはできず、モジュラス演算子を使って減らすことができると思います。ただし、Pythonでどのように機能するかはわかりません。誰か説明できますか?ありがとう。