-1
ファイルの内容をクライアントに送信するファイルを読み取るtcpサーバーがあります。Golangでは、conn.Write tcp responseが空であるのはなぜですか?
'status.txt'ファイルにはブール値のみが含まれています。
私はカールすると、これはtrue
(先頭のスペースを含む)を示しています。
dat, err := ioutil.ReadFile("./status.txt")
conn.Write([]byte(" " + string(dat)))
このコードの結果は、curl: (52) Empty reply from server
です。
conn.Write([]byte(string(dat)))
これはどうして起こりますか?私は自分のレスポンス文字列を詰め込む必要はありません。
を 'ioutil.ReadFile'は、バイトスライスを返します。だから、 'conn.Write(dat)'と書くか、パッド 'conn.Write([] byte(" + string(dat)))を使わずに書くだけです。 – jeevatkm
@jeevatkm私は両方を試しました。私は最初の返品が空だと信じています。 2番目の引数は '%'を返します。 –
あなたのプロトコルがHTTPでない場合は、なぜカールを使用していますか? Netcat(nc localhost port)を使うと動作します。 –