顺丰同城币有什么用?

首先必须仔细阅读好官方文档

先注册成为开发者,成功后会获得开发者ID(devId)和开发者密钥(devKey)

这里比较重要的是sign签名的生成

  • 将POST发送的字符串内容进行JSON序列化
  • 对上步得到的字符串用MD5加密然后Base64计算得到签名密钥
  • 请求的应答为JSON,其中字段可能随未来版本迭代而增加,请Java用户在映射为对象时,若使用Jackson库解析JSON,务必添加 @JsonIgnoreProperties 注解
  • 请求内容必须为UTF-8编码,否则结构解析会失败【下单会报push_time字段错误】

注意:由于JSON没有明确的跨语言规范,因此对JSON解析之后再进行重新编码,并不一定能还原原始JSON字符串。所以请严格按照原始报文进行签名和验签!

文档中还注明了回调接口访问和签名方式,请求为POST方式

这里根据拼接规则可以发现这是官网文档中给的接口地址,这些我们都可以写在配置文件中

# 顺丰物流的配置信息

工具我们介绍的差不多了,接下来我们进行下一步。相信各位小伙伴看了文档会发现,我们在发送请求时需要设定一些参数,那这就涉及到我们需要为这些参数设计一个能够对他们进行get/set的类。

我把所有的request请求需要用到的参数类全部放到了request文件夹下。这里举一个例子:订单创建

这里的Shop和OrderDetail在文档中又有多个属性,所以这里也当成一个类,同样的根据文档的参数进行类的构建


 
 
 
 
 

有了request,当然还得有response,根据文档中的返回值,编写好response类。

首先是response类,这个是文档中规定的返回请求。


 

但其实result才是我们想要的返回的内容,所以我们要根据不同的请求编写不同的result类,这里我们编写的类是CreateOrderResponse类。

好了,我们现在把所有要用到的实体类都已经编写完成了。接下来还有两个问题,第一是发送请求前需要规定好request中的一些参数,第二就是发送post请求。我们一步一步解决。

这里我们先收集一些需要的参数,在官网的开发者中心可以看到必要的参数

点击店铺可以看到我们测试需要的一些店铺信息

首先给CreateOrderRequest附上请求必要的一些参数,由于之后我们肯定不是以写死的方式来赋值(废话),所以我们应该在调用的时候传递一个符合条件的参数,但是这里是测试,我这里给出一个初始化各项参数的方法,仅供测试使用。

接下来是Service,这里就只展示实现类的代码,接口就由各位自己去实现了。


 
 
 
 

ok,我们所有的准备已经完成了,现在可以开始给顺丰发请求了。

我们在需要使用到功能的地方添加上相应的代码

我们的调用createOrder方法,传递相应的参数后,观察返回的结果。

我这里直接输出返回结果,也就是之前提到的result对象。

可以看到这里有返回的顺丰订单号、顺丰运单号等。现在我们就可以利用这些信息给回到我们想要显示的地方了。

当然,如果我们传入的参数有缺失,返回的结果中error_msg和error_data会有详细的信息。根据返回的结果进行修改即可。

我要回帖

更多关于 咸咸鱼能用顺丰同城速递 的文章

 

随机推荐