可以使用ASP.NET 2.0创建REST Web服务

可以使用ASP.NET 2.0创建REST Web服务

Possible to create REST web service with ASP.NET 2.0

是否可以使用ASP.NET 2.0创建REST Web服务? 我发现的文章和博客条目似乎都表明,使用WCF的ASP.NET 3.5是创建使用ASP.NET的REST Web服务所必需的。

如果可以在ASP.NET 2.0中创建REST Web服务,请提供一个示例。

谢谢!


我实际上已经使用asp.net 2.0创建了一个REST Web服务。确实与创建网页没有什么不同。

当我这样做时,我真的没有太多时间去研究如何使用asmx文件来完成它,所以我在标准的aspx文件中完成了它。我知道这样做会增加额外的开销,但作为第一个修订版,它很好。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
protected void PageLoad(object sender, EventArgs e)
{
    using (XmlWriter xm = XmlWriter.Create(Response.OutputStream, GetXmlSettings()))
    {
        //do your stuff
        xm.Flush();
    }
}

    /// <summary>
    /// Create Xml Settings object to properly format the output of the xml doc.
    /// </summary>
    private static XmlWriterSettings GetXmlSettings()
    {
        XmlWriterSettings xmlSettings = new XmlWriterSettings();
        xmlSettings.Indent = true;
        xmlSettings.IndentChars ="";
        return xmlSettings;
    }

那应该足以让您入门,我将在以后尝试发布更多内容。

另外,如果您需要对Web服务进行基本身份验证,则可以完成此操作,但是如果您不使用活动目录,则需要手动进行。


绝对有可能使用ASP.NET创建RESTful Web服务。如果您要开始一个新项目,我肯定会考虑使用WCF创建RESTful Web服务。 3.5 .NET Framework允许您指定RESTful端点以及常规的旧SOAP端点,并且仍提供相同的服务。

您真正要做的就是启用一个调用的终结点行为。

这是有关使用WCF创建RESTful Web服务的一个很好的系列:

http://blogs.msdn.com/bags/archive/2008/08/05/rest-in-wcf-blog-series-index.aspx


还可以使用ASP.Net MVC签出。我在我的博客上写了一些文章:

http://shouldersofgiants.co.uk/博客/

寻找我使用ASP.Net MVC系列创建RESTful Web服务的方法


通过使用IHTTPHandlers实现规范,您可以轻松地进行RESTful Web服务。


好吧,当然,您始终可以自己实施规范。只是没有内置支持它的东西。如果您使用Nathan Lee的解决方案,请以http处理程序(.ashx)而不是aspx的方式进行操作。您可以将他的代码复制/粘贴到新的处理程序文件中。


例如,您当然可以在ASP.NET 2.0中创建RESTful Web服务,但是没有高级API可以为您完成所有驴工作,如.NET 3.5中的WCF所提供的那样。


您可以使用创建RESTful服务

1)WCF REST服务
2)ASP.NET Web API

如果您都关心RESTful服务,则应该使用ASP.NET Web API。但是,如果您需要同时支持SOAP Web服务和RESTful的服务,那么WCF REST将是一个不错的选择。

有一些文章讨论了一个与另一个。本文可能会有所帮助。


我只是刚刚开始使用它们,但是从我所看到的2.0来看,相当假设是SOAP。


推荐阅读

    linux命令创建项目组?

    linux命令创建项目组?,管理,密码,项目,命令,系统,位置,文件,用户组,用户,文

    linux的创建目录命令?

    linux的创建目录命令?,名字,地址,位置,密码,软件,系统,命令,目录,文件夹,文

    服务器重启命令linux?

    服务器重启命令linux?,工作,标准,设备,服务,系统,名称,命令,百度,网络,密码,

    linux下文件创建命令?

    linux下文件创建命令?,名字,名称,首次,命令,文件,系统,密码,文件名,文件夹,

    linux禁用服务命令行?

    linux禁用服务命令行?,服务,系统,软件,管理,工具,信息,状态,平台,连续,技术,l

    linux停服务常用命令?

    linux停服务常用命令?,地址,工作,系统,命令,服务,信息,标准,管理,代码,进程,l

    linux创建vp命令?

    linux创建vp命令?,系统,工作,基础,设备,地址,命令,目录,环境,信息,工具,linux

    linux服务器删除命令?

    linux服务器删除命令?,系统,服务,管理,情况,命令,工作,互动,地址,软件,较大,l

    linux命令创建文件加?

    linux命令创建文件加?,名字,管理,系统,名称,密码,首次,命令,文件,文件夹,位

    linux开启服务命令?

    linux开启服务命令?,服务,标准,设备,工作,网络,系统,密码,命令,服务器,终端,

    linux服务器负荷命令?

    linux服务器负荷命令?,信息,电脑,中科,环境,工具,系统,平均,检测,情况,状态,l

    linux常见服务器命令?

    linux常见服务器命令?,信息,工作,标准,地址,设备,系统,情况,时间,状态,命令,

    linux服务器基础命令?

    linux服务器基础命令?,设备,标准,工作,地址,服务,系统,信息,情况,图片,基础,

    服务器linux命令大全?

    服务器linux命令大全?,标准,工作,设备,系统,服务,信息,时间,命令,服务器,级

    重启linux服务器命令?

    重启linux服务器命令?,标准,设备,工作,命令,网络,系统,提示,主机,服务器,接

    linux按命令创建磁盘?

    linux按命令创建磁盘?,系统,信息,业务,号码,数据,情况,电脑,分区,较大,工具,

    linux命令中创建文本?

    linux命令中创建文本?,系统,时间,文件,终端,名字,名称,发行,命令,文件夹,文

    linux常用命令创建?

    linux常用命令创建?,地址,系统,工作,时间,命令,管理,文件,目录,路径,控制台,l

    文件创建linux命令?

    文件创建linux命令?,名字,时间,名称,系统,首次,文件,命令,密码,文件名,目录,L