快递鸟现在能支持常用20多家快递公司电子面单打印,对接的企业也比较多,在使用快递鸟电子面单接口的时候很多人都会有疑问:如何解析接口返回的一大段json字符串,使它呈现为我们平常使用的电子面单样式?下面我以EMS电子面单请求为例,跟大家分享一下我的经验。
请求电子面单接口成功后,会返回图一数据,PrintTemplate参数中包含了电子面单模板的信息,我们要做的就是处理printTemplate参数中的数据,使其以html的面单样式显示。
图一
这里总结了两个方法可供大家参考:
1、 我使用的是.net开发语言,将printTemplate放在html控件中显示:
(1)、在显示信息的*.aspx页面中定义一个id为“content”的div控件。
<divrunat="server"id="content">
</div>
(2)、在相应的*.aspx.cs文件中添加如下代码:
//将接口返回的json字符串反序列化。
JObject result = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(str);
//获取printTemplate的值
var tmp = result["PrintTemplate"];
if (tmp != null)
{
//将tmp中的html标签放到content中显示
content.InnerHtml = tmp.ToString();
}
2、 使用jquery进行显示。
直接使用: $('#div').html(模版内容)进行显示。
使用上述两种方法均可以将返回的数据处理成html样式显示。
显示效果: