【发布时间】:2023-04-03 05:35:01
【问题描述】:
对于以下代码,如果我请求一个包含图像的 html 页面,我在浏览器中看不到该图像。我做错了什么?
这里是 C# 代码:
namespace WebServer
{
class Program
{
static void Main(string[] args)
{
TcpListener listener = new TcpListener(8080);
listener.Start();
while (true) {
Console.WriteLine("Waiting for connection...");
TcpClient Client = listener.AcceptTcpClient();
StreamReader sr = new StreamReader(Client.GetStream());
StreamWriter sw = new StreamWriter(Client.GetStream());
try
{
string request = sr.ReadLine();
Console.WriteLine(request);
string[] tokens = request.Split(' ');
string page = tokens[1];
if (page == "/") {
page = "index.htm";
}
StreamReader file = new StreamReader("../../web/"+page);
sw.WriteLine("HTTP/1.0 200 ok\n");
//send the file
string data = file.ReadLine();
while (data != null)
{
sw.WriteLine(data);
sw.Flush();
data = file.ReadLine();
}
}
catch (Exception ex)
{
//error
sw.WriteLine("HTTP/1.0 404 ok\n");
sw.WriteLine("<h1>Sorry! We could not find your file!</h1>");
sw.Flush();
}
Client.Close();
}
}
}
}
为什么会出现这个问题,我该如何解决? 如何在浏览器中显示图像和视频文件的使用情况?
【问题讨论】:
标签: c# asp.net http-headers