你的位置:首页 > 软件开发 > ASP.net > 用.net访问电子枢纽信用中心的数据查询服务

用.net访问电子枢纽信用中心的数据查询服务

发布时间:2016-12-02 22:00:06
概要说明电子枢纽全称国家交通运输物流公共信息平台,主要提供物流及生产企业进行物流相关数据交换的标准和API,详细介绍可参考其官网www.logink.org,本文假定阅读者对该平台已有了解,并已成功申请了相应的帐号和数据交换服务。信用中心是电子枢纽众多数据服务中的一个,提供物流参 ...

概要说明

电子枢纽全称国家交通运输物流公共信息平台,主要提供物流及生产企业进行物流相关数据交换的标准和API,详细介绍可参考其官网www.logink.org,本文假定阅读者对该平台已有了解,并已成功申请了相应的帐号和数据交换服务。

信用中心是电子枢纽众多数据服务中的一个,提供物流参与者信用信息的上传和查询,包括运输车辆、从业人员等。官方的示例和介绍大多以Java为主,.net的非常少,希望本文可以帮助.net开发人员快速掌握数据交换方式。

电子枢纽的数据服务分为两种,一种称为数据交换,另一种称为服务调用。

数据交换是一种类似电子邮件的行为,可以把电子枢纽看作是一个邮件服务器,发送和接收数据就与收发电子邮件的方式类同。

服务调用就是常规的HTTP请求,主要用于向电子枢纽查询信息,例如对于信用中心来说,可以查询到车辆的运政信息、诚信记录等。

本文主要介绍的是服务调用方式,要调用电子枢纽提供的服务,首先必须确保已经开通了相关服务,开通后还需要获得服务的ID,这些任务都可以从电子枢纽的用户管理中心完成。

在调用服务前,必须获得用户验证的令牌(Access Token),这项工作可通过统一认证服务完成,获得令牌后,方可凭令牌调用相关服务。

引入服务

电子枢纽的数据接口都是以Web Service提供的,所以在开始编码之前,可以先引入相关的服务,在VS里直接添加服务引用即可,相关的服务地址可以在官网的开放接入中心找到。

值得注意的是,虽然电子枢纽提供的大部分Web Service都可以在VS中直接引入,但还有个别不能采用这种“添加服务引用”的方式,目前已知的就是信用中心服务。对于这种情况,需要在VS中以Web引用的方式来添加,具体方法如下。

右键点击解决方案浏览器中项目或引用(Reference)的节点,在菜单中选择“添加服务引用”(Add Service Reference),在弹出的对话框里点击“高级”(Advanced),再在弹出的服务引用设置对话框里点击“添加Web引用”(Add Web Reference)即可调出添加Web引用的对话框。

用.net访问电子枢纽信用中心的数据查询服务  用.net访问电子枢纽信用中心的数据查询服务

至于为什么要这样,由于我对SOAP和WCF没有太多了解,实在没法回答这个问题,希望这方面的大神可以给出解答。

访问代码

引用添加完以后,VS会为我们自动生成好相应的类型,直接使用就可以。

首先是获取令牌,统一验证服务的客户端类型是AuthenServiceClient,实例化以后调用他的authenticate方法,方法签名如下:

authenticate(get='_blank'>string applicant, string userid, string password, string resource)

关于这个方法的具体说明,可参考官方说明。

返回值的tokenValid属性指示是否验证成功,如果为true,可通过token属性获取令牌的值。示例代码如下:

 1 private bool Authenticate(LoginkUser user, string resId, out string token) 2 { 3   AuthenServiceClient clnt = new AuthenServiceClient(); 4  5   var result = clnt.authenticate(user.ExchangeCode, user.ExchangeCode, user.Password, resId); 6  7   if (result.tokenValied) 8     token = result.token; 9   else10     token = null;11 12   clnt.Close();13 14   return token != null;15 }

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:用.net访问电子枢纽信用中心的数据查询服务

关键词:.NET

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。