我有一个使用MVC构建的网站,现在我想为这个网站构建一个API,让用户使用这个API来实现不同的网站,Web服务,插件和浏览器扩展。
我经历了这个article,但还没有使用哪个。
有关我要构建的API的一般信息:
API的用户将拥有一个密钥用户名和密码,以便能够使用API
API将允许用户在验证此数据后向我的数据库添加内容
API将允许用户将图像上传到我的服务器
API需要友好的URL。
哪种技术适用于我的情况?
还有助于我决定知道stackoverflow API背后的技术是什么?
答案 0 :(得分:8)
试试WCF Web Api。它有很多很酷的东西来创建好的RESTFul api,它可以满足你的所有要求。
一般的想法是,这个库为您提供强大的操作选项,从请求的一开始直到它的响应。这是.NET Framework和WCF的主要HTTP api,它继续发展。
答案 1 :(得分:3)
您是否考虑使用OpenRasta?
其干净,ReSTful方法使其非常适合在.NET中开发基于Web的API。
答案 2 :(得分:1)
除非您有非常令人信服的理由使用WCF,否则为什么不通过ASP.NET MVC站点公开您的数据。您可以从ASP.NET MVC中轻松返回适合您需要的JSON或任何其他非HTML数据格式。
根据您的网站与API之间的界面需要的相似程度,您可以使用现有的控制器/操作或创建新的控制器/操作。从理论上讲,如果HTTP请求指示“application / json”,您只需将JSON返回给那些请求并完成......但实际上,您可能需要调整端点(控制器/操作)以使它们对新的友好消费者(针对您的API的其他开发者)
WCF非常好,功能丰富,但不是每个人都熟悉它。你可能会产生一个学习曲线,以便对它有一个很好的理解。同样,如果有一个非常有效的理由,那么它是值得的,但是根据你所描述的,你可能会对普通的ASP.NET MVC一样好。