HTTP REST并执行各种操作 - 基于Web的Active Directory应用程序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP REST并执行各种操作 - 基于Web的Active Directory应用程序相关的知识,希望对你有一定的参考价值。
我正在为常见的Active Directory任务构建Web前端,例如详细信息,创建,修改,禁用。我有标准的已经工作:
- 用于CreateAdUser的HTTPPost
- GetGUser的HTTPGet
- 用于UpdateAdUser的HTTPPatch
现在我的问题是我应该如何(或什么HTTP动词)链接其他常见任务,如启用/禁用,重置密码,终止(这将禁用用户,删除所有组,更新说明,并移至删除OU) 。任何建议或例子都会很棒。我的第一个想法是使用一个带有“选项”对象的POST,它看起来像:
- 禁用= false
- 启用= false
- 终止=假
- ResetPassword = false
然后在POST请求的主体中传递该对象,并在触发true时处理实际选项。我认为这会奏效,但这是正确的方法吗?在此先感谢您的任何帮助。
答案
如果要对同一控制器上的相同谓词使用多个操作,可以通过在URL中添加方法名称{action}来定义路由。
WebApiConfig.cs:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
并调用URL如:
/api/operation/GetAdUser/1
另一答案
那么,这些操作实际上只是LDAP修改请求:
- 禁用= false
- 启用= false
- 终止=假
- ResetPassword = false
我找到了一个页面,显示了一些CRUD mapping options。
以上是关于HTTP REST并执行各种操作 - 基于Web的Active Directory应用程序的主要内容,如果未能解决你的问题,请参考以下文章
REST easy with kbmMW #15 – Handling HTTP POST