TcpListener HTTP文件上载随机失败

时间:2012-01-03 03:47:44

标签: c# http tcp

背景

我正在尝试将简单的Web服务器部分实现为桌面应用程序的Web界面。 我首先尝试了HTTPListener,它工作但需要管理员权限(以某种方式),我认为这是不必要的。我现在正在尝试基于TcpListener的方法。

进度

服务文件运行良好,但我遇到文件上传问题。我基本上尝试使用答案found in another question,但不是插入HttpListenerContext.Request.InputStream,而是使用了TcpClient.GetStream()。

问题

问题是这似乎是随机的。有时它工作正常,但大多数情况下它没有。当它不起作用时,线程似乎什么都没做,直到我在我的浏览器中按abort并继续抛出异常“未找到起始边界”(参见链接中的代码)。

问题

现在,我的问题是:

  • 我是以正确的方式做到这一点还是有更简单的方法来创建HTTP服务器(包括第三方库)?
  • 可能导致我的问题的原因是什么?
  • 您需要看哪些代码部分来帮助我?

1 个答案:

答案 0 :(得分:1)

Cassini项目就是您所需要的。您也可以在单声道中查看XSP

您应该能够将这些项目嵌入到代码中并托管ASP.NET。如果无法做到这一点,您可以开始查看XSP源并自行实现Web服务器部分。