在C#Console应用程序中处理HTTP请求

时间:2013-05-16 12:45:37

标签: c# web-services

我创建了一个工作正常的控制台应用程序,但我想添加处理http请求的能力,首先问题是我需要使用另一个端口,如1370,第二个问题:我不想使用ASP。 NET Web服务,因为它需要IIS。

4 个答案:

答案 0 :(得分:3)

您有几种选择:
a)使用Microsoft方式 - 自托管WCF。 http://msdn.microsoft.com/en-us/library/ms731758.aspx

b)使用开源 - 有几种口味可供选择 - ServiceStack(http://servicestack.net),开放rasta(http://openrasta.org/

c)从头开始,比如使用HttpListener,或者甚至在较低级别,如套接字。

答案 1 :(得分:2)

使用HttpListener课程,this是好文章

答案 2 :(得分:0)

Web APi怎么样?你可以自己托管网络API。它简单轻便:)

using System.Web.Http;
using System.Web.Http.SelfHost;      

var config = new HttpSelfHostConfiguration("http://localhost:8080");

config.Routes.MapHttpRoute(
    "API Default", "api/{controller}/{id}", 
    new { id = RouteParameter.Optional });

using (HttpSelfHostServer server = new HttpSelfHostServer(config))
{
    server.OpenAsync().Wait();
    Console.WriteLine("Press Enter to quit.");
    Console.ReadLine();
}

答案 3 :(得分:-1)

使用WCF。您将能够处理HTTP请求。