-1
私がやっていることは、TcpClientでHTTPプロトコルでデータを送信することです。しかし、私はここで問題に直面した。送信したデータ(ヘッダーの後)は、クライアントのアプリ(ブラウザなど)に完全には送信されませんでした。コード:HTTPとTcpClientでデータを送信できません
// Building data.
string notfound = "NOT FOUND";
byte[] data = Encoding.UTF8.GetBytes(notfound);
// Building header.
m_responseBuilder.Append("HTTP/1.1 404 Not Found").Append(CRLF);
m_responseBuilder.Append("Server: ETP").Append(CRLF);
m_responseBuilder.Append("Content-Type: text/plain").Append(CRLF);
m_responseBuilder.Append("Content-Length: ").Append(data.Length.ToString()).Append(CRLF);
m_responseBuilder.Append(CRLF);
byte[] header = Encoding.UTF8.GetBytes(m_responseBuilder.ToString());
// Sending header.
await SendDataAsync(header);
// Sending data.
await SendDataAsync(data);
SendDataAsync:
async Task SendDataAsync(byte[] data)
{
try
{
await m_tcpchannel.WriteAsync(data, 0, data.Length);
}
catch
{
DestroyConnection();
}
}
私が得たもの:いただきました間違った右ここ
NOT FOUN
?
1)なぜHttpListenerを使用しないのですか? 2)もちろん、その壊れた、yerはバイトスープのあなたの指をつまんで、それをまわりをそっと動かします。 (あなたはUTF8でイメージをエンコードすることはできません;エンコーディングは文字列のため、System.Text名前空間のそれです)。 –
1)私はabt httpパケットを学びたい –
2)ファイルは文字列にエンコードされておらず、バイトとして直接送信されます。 –