使用WCF创建需要身份验证并使用JSON作为输入/输出格式的RESTful Web服务

使用WCF创建需要身份验证并使用JSON作为输入/输出格式的RESTful Web服务,wcf,json,restful-authentication,webhttpbinding,Wcf,Json,Restful Authentication,Webhttpbinding,我想将现有的ASP.NET Web服务移植到WCF,以便生成的Web服务(1)是RESTful的,(2)使用JSON作为其请求/响应格式,(3)具有自定义身份验证机制 经过大量的谷歌搜索、随机编码,我想把头撞到墙上,我发现 必须使用webHttpBinding使Web服务具有RESTful。但是 webHttpBinding不支持HTTPS主机 webHttpBinding不支持用户名身份验证 webHttpBinding甚至不支持消息安全性 必须使用带有的端点行为来支持ASP.NET AJA

我想将现有的ASP.NET Web服务移植到WCF,以便生成的Web服务(1)是RESTful的,(2)使用JSON作为其请求/响应格式,(3)具有自定义身份验证机制

经过大量的谷歌搜索、随机编码,我想把头撞到墙上,我发现

  • 必须使用
    webHttpBinding
    使Web服务具有RESTful。但是

  • webHttpBinding
    不支持HTTPS主机

  • webHttpBinding
    不支持用户名身份验证

  • webHttpBinding
    甚至不支持消息安全性

  • 必须使用带有
    的端点行为来支持ASP.NET AJAX。但是

  • 什么是“ASP.NET”AJAX

  • 如果我想使用“常规”AJAX使用Web服务,该怎么办

  • 最重要的是

  • WCF能做我想做的事情吗

  • 如果没有,我还可以使用哪些其他平台


  • 我已经编写了WCF服务,它使用XML和JSON以及自定义身份验证来执行SOAP和REST。我已将自定义身份验证推送到HTTP模块中,该模块通过https进行基本身份验证。请参阅和。

    在您描述的设置中,web服务商(即IIS)将负责加密(HTTPS)和身份验证(例如基本身份验证)。IIS可以通过自定义身份验证机制进行扩展(只需谷歌搜索“IIS模块处理程序”)


    有点奇怪,它必须委托给IIS,而不是WCF的一部分。但这一点都没有问题。

    “web服务器将负责加密…”如何?我尝试将HTTPS主机与
    webHttpBinding
    一起使用,但出现了一个错误。很抱歉,我本可以更清楚地说明:在此设置中,您必须在IIS中配置它(使用IIS管理器/inetmgr.exe),而不是在web.config的WCF部分(或您使用的任何WCF配置)。是否有任何方法可以让IIS使用自定义的
    用户名密码验证程序
    ?假设您的自定义用户名密码验证程序用于身份验证,我建议您了解如何实现自定义身份验证并使其与WCF一起工作。你可以在网上找到更多的例子。我下载了它,但是如何安装呢?没有任何文档。如何编写HTTP模块?“我是一个非常新的Web开发人员。@Eduardo León当我搜索“http模块”时,它出现的第一个页面就是示例代码。如果信息随时可用,作为新手不能被用作借口。你是否也关注了我提供的链接?