app 调用接口
app 调用接口
/// <summary>
/// 是否跳转到活动注册成功页面
/// </summary>
/// <returns></returns>
[HttpGet]
public JsonResult IsActivityRegisterSuccess()
{
string result = string.Empty;
try
{
result = ConfigurationManager.AppSettings["IsActivityRegisterSuccess"] ?? "False";
return Json(
new
{
IsSuccess = true,
Message = "获取是否跳转活动注册成功页面状态值成功",
ResultData = Boolean.Parse(result)
}, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
return Json(
new
{
IsSuccess = false,
Message = "获取是否跳转活动注册成功页面状态值失败 -- " + ex,
ResultData = Boolean.Parse(result)
}, JsonRequestBehavior.AllowGet);
}
}
#region 订单相关
/// <summary>
/// 查询订单详情 (新接口)
/// </summary>
public JsonResult QueryNewOrderDetailBySchemeId()
{
try
{
string userToken = CurrentUserLoginInfo.UserToken;
string schemeId = Request["SchemeId"];
if (string.IsNullOrEmpty(schemeId))
throw new ArgumentException("订单号不能为空!");
if (schemeId.StartsWith("CHASE"))
return QueryCHASEOrderDetail(schemeId, userToken);
else if (schemeId.StartsWith("TSM"))
return QueryTMSOrderDetail(schemeId, userToken);
else
return QueryGeneralOrderDetail(schemeId, userToken);
}
catch (ArgumentException ex)
{
return Json(new CommonResult
{
IsSuccess = false,
Message = ex.Message,
ResultCode = (int)ResultCodeEnum.VerifyError,
});
}
catch (Exception ex)
{
return Json(new CommonResult
{
IsSuccess = false,
Message = ex.Message,
ResultCode = (int)ResultCodeEnum.APIError,
});
}
}
群发短信1.0版本接口
接口规范
code: 接口状态码(200:成功 其他:后台子定义) message:接口状态信息 data:接口返回数据结构
接口名称:
注册设备号
地址: http://*:8080/home/TaskLogin
参数:Address(设备号) PhoneNumber(设备手机号码)
正确的返回格式: {"code": 200,"message": "成功","data": ""}
错误的返回格式: {"code": 404,"message": "失败原因","data": ""}
根据手机号获取任务
地址: http://*:8080/home/GetTaskPhoneNumber
参数:Address(设备号) PhoneNumber(设备手机号码)
正确的返回格式:
{"code": 200,"message": "成功","data":{{
"taskToken": "665a834cd9b949ffb1e2a852cb87173e",
"phoneNumber": [
{
"id": 22,
"status": "1",
"fromPhone": "13973123242",
"toPhone": "13973123243",
"sendContent": "不不不不不不",
"sendTime": "2018-08-17 16:57:48"
},
{
"id": 23,
"status": "1",
"fromPhone": "13973123242",
"toPhone": "13973123244",
"sendContent": "不不不不不不",
"sendTime": "2018-08-17 16:57:48"
},
]
}
} }
错误的返回格式:
{"code": 404,"message": "失败原因","data": null}
更新每个短信状态
地址: http://*:8080/home/SMSRefresh
参数:phoneNumber(接收短信的手机号) taskId(任务 ID) stateCode(发送状态) TaskToken(...)
正确的返回格式: {"code": 200,"message": "成功","data": ""}
错误的返回格式: {"code": 404,"message": "失败原因","data": ""}
app 调用接口的更多相关文章
- 设计基于HTML5的APP登录功能及安全调用接口的方式
转自:http://blog.csdn.net/linlzk/article/details/45536065 最近发现群内大伙对用Hbuilder做的APP怎么做登录功能以及维护登录状态非常困惑,而 ...
- 设计基于HTML5的APP登录功能及安全调用接口的方式(原理篇)
登录 保存密码 安全 加密 最近发现群内大伙对用Hbuilder做的APP怎么做登录功能以及维护登录状态非常困惑,而我前一段时间正好稍微研究了一下,所以把我知道的告诉大家,节约大家查找资料的时间. 你 ...
- 使用HBuilder开发移动APP:ajax调用接口数据
既然要做APP,与接口交互式少不了的,除非只是想做一个纯静态的APP.所以html5+的环境准备好后,我最先开始研究的就是如何与接口交互. 使用HBuilder新建示例教程后,里面会有一个ajax(网 ...
- 【原创分享·支付宝支付】HBuilder打包APP调用支付宝客户端支付
前言 最近有点空余时间,所以,就研究了一下APP支付.前面很早就搞完APP的微信支付了,但是由于时间上和应用上的情况,支付宝一直没空去研究.然后等我空了的时候,发现支付宝居然升级了支付逻辑,虽然目前还 ...
- 【转】App开放接口api安全性—Token签名sign的设计与实现
前言 在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些接口需要进行身份的认证,那么这就需要用户提供一些信息,比如用户名密码等, ...
- C#怎样通过url调用接口
在做一些项目过程中,我们常常总避免不了要调用接口,那么怎么通过url调用借口呢.我今天浅显的写一下. 首先要获取你访问链接的App Key 和 App Secret 那么什么是App Key 和 Ap ...
- App开放接口api安全性的设计与实现
前言 在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些接口需要进行身份的认证, 那么这就需要用户提供一些信息,比如用户名密码等 ...
- java servlet手机app访问接口(一)数据加密传输验证
前面几篇关于servlet的随笔,算是拉通了 servlet的简单使用流程,接下去的文章将主要围绕手机APP访问接口这块出发续写,md5加密传输--->短信验证--->手机推送---> ...
- App开放接口api安全性—Token签名sign的设计与实现
前言 在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些接口需要进行身份的认证,那么这就需要用户提供一些信息,比如用户名密码等, ...
随机推荐
- 015.Linux系统删根数据恢复
重要声明: 本文档所有思路来自于誉天教育,由本人(木二)在实验环境验证通过: 您应当通过誉天邹老师或本人提供的其他授权通道下载.获取本文档,且仅能用于自身的合法合规的业务活动: 本文档的内容仅供学习交 ...
- jvm本地实战
前言 由于上次线上full gc,让我这个没有机会实战接触jvm的人,尝到了一定的甜头,同时也觉得自己还有很多东西需要去实战并总结.这是一篇记录jvm配置参数,使用jvisualvm工具来让人对j ...
- <<c专家编程>>笔记
C专家编程摘录 c操作符的优先级 有时一些c操作符有时并不会像你想象的那样工作. 下方表格将说明这个问题: 优先级问题 表达式 期望的情况 实际情况 . 优先级高于* *p.f (*p).f *(p. ...
- NMAP为什么扫描不到端口
NMAP为什么扫描不到端口 NMAP是知名的网络端口扫描工具.但很多新人发现,使用NMAP经常扫描不出来任何端口,尤其是手机之类.这实际存在一个理解上的误区.扫描端口是为了发现主机/设备上存在的对 ...
- collections集合模块 [namedtuple,deque,*]
collections是Python内建的一个集合模块,提供了许多有用的集合类. namedtuple namedtuple是一个函数, 它用来创建一个自定义的tuple对象,并且规定了 tuple元 ...
- div+css布局记扎
实际开发网站过程中边碰壁边积累了一些div+css布局相关的小技巧,在这里做一些整理与大家一起探讨.本文章将间歇性更新. 1.div+css布局综述 div+css布局个人观点就是“盒子套盒子”的关系 ...
- BZOJ.4553.[HEOI2016&TJOI2016]序列(DP 树状数组套线段树/二维线段树(MLE) 动态开点)
题目链接:BZOJ 洛谷 \(O(n^2)\)DP很好写,对于当前的i从之前满足条件的j中选一个最大值,\(dp[i]=d[j]+1\) for(int j=1; j<i; ++j) if(a[ ...
- BZOJ.2177.曼哈顿最小生成树(Kruskal)
\(Solution\) 参考 对于每个点,向唯一有可能与它形成MST的8个点连边,由于是双向单边,所以每个点最多连出4条边(证明见blog) 怎么找到一个区域内最近的点? 只考虑y轴右侧45°的区域 ...
- 早期(编译器)优化--Java语法糖的味道
1.泛型与类型擦除 泛型的本质是参数化类型的应用,也就是说所操作的数据类型被指定为一个参数.这种参数类型可以用在类.接口和方法的创建中,分别称为泛型类.泛型接口和泛型方法.在泛型没有出现之前,只能通过 ...
- webpack 练习笔记
1, 创建项目 webpack mkdir webpack 2, 初始化项目 npm init 3, 全局安装webpack npm install webpack -g 4, 使用 // 创建静态文 ...