Aliexpress API 测试工具
2013-08-30 13:52
246 查看
Aliexpress API 测试工具
上回简单说了 Aliexpress API 的认证流程, 这回在奉送一个小工具, API 测试工具.View Code
public class OrderQueryList : MethodBase<OrderList> {
protected override string APIName {
get { return "api.findOrderListQuery"; }
}
private int pageSize = 50;
[ParamName("pageSize", Required = true)]
public int PageSize {
get {
return pageSize;
}
set {
this.pageSize = value < 1 ? 1 : (value > 50 ? 50 : value);
}
}
private int page = 1;
[ParamName("page", Required = true)]
public int Page {
get {
return this.page;
}
set {
this.page = value < 1 ? 1 : value;
}
}
[ParamName("createDateStart")]
[AliDateTimeParamFormatter("MM/dd/yyyy")]
public DateTime? CreateBegin { get; set; }
[ParamName("createDateEnd")]
[AliDateTimeParamFormatter("MM/dd/yyyy")]
public DateTime? CreateEnd { get; set; }
[ParamName("orderStatus")]
public OrderStatus? Status { get; set; }
}
带 ParamName 特性的属性即API 说明列出的 API 方法所需要的参数, 在 MethodBase 里有个虚方法 Execute 及 GetResult.
绝大部分API方法不需要重写这两个方法, 但是有两个特例(到目前为止,我遇到的): 和上传图片有关的两个方法.
http://gw.api.alibaba.com/dev/doc/api.htm?ns=aliexpress.open&n=api.uploadTempImage&v=1
大家可以看看, Ali 的人真是省事, 就几句话了事. 光凭这几句话, 打死我也想不出要怎么个上传法. 我费劲巴啦的耗了几个小时按照网页上传图片的方法对 RequestHelper 类进行修改,然后建个测试网站做测试, 改完后发现牙的根本就不是这样上传的, 结果死都是500,未找到文件.
后来在阿里巴巴的论坛里找到了某同志的回贴, 原来和从网页上传图片完全不搭调.
View Code
[NeedAuth]
public override string GetResult(Auth auth) {
var url = auth.GetApiUrl(this.APIName).SetUrlKeyValue("srcFileName", this.FileName);
using(var client = new WebClient()) {
try {
var result = client.UploadData(url, this.UploadData);
return Encoding.UTF8.GetString(result);
} catch(WebException ex) {
return Encoding.UTF8.GetString(ex.Response.GetResponseStream().GetBytes());
}
}
}
原来是直接将文件的字节数组 Post 到特定格式的网址里, 真的是很晕,我熬夜到3点多,尽然是多此一举.
另外, 由于精力有限, 目前我只对照返回结果写了几个对应的实体, 其它的没有用到的,我不打算写, 如果各位有兴趣的话,可以反编译一下: AsNum.Aliexpress.API.dll 这个DLL, 源码我也不准备放出, 因为真的是很简单(只是有些繁琐而以), 有需要的可以自行反编译一下.
使用之前需要从菜单里设置一下 AppKey 和 SecretKey , 当然你需要有一个 Aliexpress 的账户.
相关文章推荐
- C#借助API实现黑盒自动化测试工具的编写(转)
- 最好用的API调试接口 在线接口测试工具
- C#进阶系列——WebApi 接口测试工具:WebApiTestClient
- WebApi 接口测试工具:WebApiTestClient
- 开源API测试工具 Hitchhiker v0.5更新 - 完善细节
- 安装Postman(API测试工具)教程
- 自动化测试工具Webdriver(2)API
- 基于XML的API自动化测试工具设计与实现
- WebApi系列--接口测试工具:WebApiTestClient
- chrome插件 postman插件 接口测试、API & HTTP 请求调试工具
- API测试工具 postman 介绍
- REST API测试 —— “趣测API”在线测试工具介绍
- APNs推送的测试工具(使用新的HTTP2 api)
- API 测试工具 提示Invalid signature
- 开源API测试工具 Hitchhiker v0.6更新 - 改进压力测试
- PHP本地API接口测试工具
- C#进阶系列——WebApi 接口测试工具:WebApiTestClient
- C#借助API实现黑盒自动化测试工具的编写
- WebApi接口测试工具:WebApiTestClient
- C#借助API实现黑盒自动化测试工具的编写