Note-WebAPI

这篇博客详细介绍了如何使用C#实现WebAPI,包括字符串打印、Post请求的服务器端和客户端操作,以及一系列服务接口的示例,如登陆、注册、获取待确认的申请、确认发送邮件和获取已办箱列表等。

 

 

字符串打印

Console.WriteLine();

string.Format("dfdfjk{0}", );

 

Post请求

服务器端

// POST api/values
[HttpPost]
public string PostOne([FromBody]string value)
{
    return string.Format("you post one: {0}", value);
}
 
[HttpPost]
public string PostPerson([FromBody]Person value)
{
    return string.Format("you post person: {0},{1},{2}", value.ID, value.First, value.Last);
}


客户端

fiddle模拟

 

dgpcad 175可用账户

 

 

 

服务接口

 

Content-Type: application/json; charset=utf-8

 

登陆:

POST: http://localhost:8887/api/values/Login/1

{

"UserName": "chenhao",

"Pwd": "121"

}

 

注册申请:

POST: http://localhost:8887/api/values/ApplyLic/1

{

"ProductName": "报建通",

"ProductVer": "河北",

"MachineCode": "23232323",

"UserName": "陈好",

"Affliation": "数慧",

"PhoneNum": "1234567",

"Email": "abc@162.com",

"Qq": "123321",

"ApplyDate": "20170922"

}

 

 

获取待确认的申请:

GET: http://localhost:8887/api/values/GetApplyLic/1?adminName=chenhao

 

 

确认发送邮件:

POST: http://localhost:8887/api/values/AcceptApply/1

{

"Accepted": "1",

"ApplyID": "5E9A759373E94861B5A8C7AF36D62304",

"AdminName": "chenhao",

"ApplyTimes": "3",

"FromDate": "20170801",

"ToDate": "20171001",

"CheckDate": "20170925"

}

点击"通过",Accepted:1;否则,Accepted:0,其他字段填空。

 

  • 普通163邮箱的认证不能写"@163.com",而公司企业邮箱需要加上该后缀
  • 发邮件服务器地址则需要改成"smtp.qiye.163.com"

 

获取已办箱列表:

GET: http://localhost:8887/api/values/GetAcceptedLic/1?adminname=chenhao

 

再次发送邮件:

GET: http://localhost:8887/api/values/ResendEmail/1?acceptId=5E9A759373E94861B5A8C7AF36D62304

@startuml autonumber actor Web participant "vms-api gateway" as apigateway participant "vms-identityAccess" as iam participant "vms-manager" as manager == local设备添加 == Web -> apigateway : local设备批量添加topic订阅请求 note right of apigateway : /vms/{vmsId}/users/{userId}/device-add-progress/{uuid}/V2 apigateway -> iam : 刷新session iam --> apigateway : 响应结果 apigateway -> apigateway : 解析WebSocket消息,构建http请求 apigateway -> manager : 发送请求,触发添加逻辑 activate manager loop 每个设备 manager -> manager : 执行添加流程 manager -> apigateway : 推送消息 apigateway -> apigateway : WebSocket消息封装 apigateway -> Web : 推送消息 note left of Web { "type": "SUBSCRIBE", "status": "COMPLETE", "errorCode": "0", "data": { "success": a, "fail": b, "total": c }, "number": d } end note Web -> Web : 检查消息编号,小于已缓存的最大值时丢弃 Web -> Web : 更新进度条 end manager -> manager : 添加流程结束,将失败结果存入缓存 note right manager : 缓存时间由业务决定,该场景设置为半小时 manager -> apigateway : 推送完成消息 apigateway -> Web : 推送完成消息 Web -> Web : 更新编号、进度条 Web -> Web : 读取错误码字段 alt errorCode = 0 Web -> Web : 结束流程 else errorCode != 0 Web -> apigateway : 调用获取失败列表查询接口 apigateway -> manager : 查询缓存 manager --> apigateway : 返回结果 apigateway --> Web : 返回结果 deactivate manager Web -> Web : 展示失败列表 end @enduml这是我目前设备添加进度的plantUML,有需要调整的吗
最新发布
09-20
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值