淘宝开放平台(TOP)的返利金额获取的rails实现(hastings)

本文介绍了如何在Rails应用中实现实时获取淘宝开放平台(TOP)的返利金额。首先,需要在页面head中添加指定的JS,并设置相应的cookie。然后,通过控制器和模型代码生成签名,确保API调用的安全。最后,使用前端JS调用TOP的API获取返利金额。
摘要由CSDN通过智能技术生成

我们公司最近需要实现实时获取TOP的返利金额,在搜索过相关资料后发现TO已经有相关的API了,但这个API的调用类型跟我们平时用的不太一样,它是客户端类型的,只能在前台页面上的js进行调用。所以我们我们需要重新设计我们的API加密和调用方式。

首页TOP要求在页面的head中添加一段js

<script src="http://a.tbcdn.cn/apps/top/x/sdk.js?appkey=xxxxxxx"></script>

这个appkey是你在TOP注册后得到的。

这段js会加载TOP的API调用相关的js文件,但你如果想成功的调用API还需要往浏览器写入两个cookie,分别是cookies[:timestamp], cookies[:sign]

controller的代码是

cookies[:timestamp], cookies[:sign] = Taobao.get_web_sign

model 的代码是

  def self.get_web_sign
    time_str = Time.now.to_i.to_s + "000"
    str = TAOBAO_SECRET + "app_key" + TAOBAO_KEY + "timestamp" + time_str + TAOBAO_SECRET
    sig = OpenSSL::HMAC.hexdigest(OpenSSL::Digest::Digest.new('md5'),TAOBAO_SECRET, str ).upcase
    return time_str,sig
  end


其中TAOBAO_KEY 和 TAOBAO_SECRET 就是在TOP注册得到的appkey和secret

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值