首页 > 帮助中心 > 签名生成方法

签名生成方法

2019-09-23 21:50

开发者服务端在与微投票服务器交互的过程中,需要对参数进行加签等操作,下边介绍具体规则。

一、服务端

1、请求微投票接口,需要根据参数生成一个签名(sign)并携带在参数中进行请求,最终的请求形式如下:

http://接口地址?sign=签名&timestamp=当前秒级时间戳&nonce=随机字符串

并且除sign外的其余参数都需要参与签名计算。

2、签名生成方法:

将请求参数按键进行升序排序->将排序好的数组生成url-query参数->进行加密并拼接为最终签名

// php-demo
public function sign($data)
{
    $access_key = '后台获取';
    $secret_key = '后台获取';
    if (is_array($data)) {
        ksort($data);                        // 按照升序排序
        $data = http_build_query($data);     // 转为url-query参数,如:a=1&b=2&c=3
    }
    $sign_temp = hash_hmac('sha1', $data, $secret_key); // 加密
    return $access_key . '_' . strtoupper($sign_temp); // 拼接最终签名
}

# python-demo
import hmac
from urllib.parse import urlencode
def sign(data):
    access_key = '后台获取'
    secret_key = '后台获取'
    sign_data = sorted(data.items(), key=lambda d: d[0])  # 按照升序排序
    sign_data = urlencode(sign_data) # 转为url-query参数,如:a=1&b=2&c=3
    sign_temp = hmac_sha1(secret_key, sign_data)  # 加密
    return access_key + '_' + sign_temp.upper()  # 拼接最终签名

3、接口请求域名

接口地址前缀为:

https://server.weitoupiao.com/api/

然后跟上具体接口地址,如:

https://server.weitoupiao.com/api/tpopen/wxxcxLogin

二、会话保持

调用wxxcxLogin或guestLogin接口后,系统会返回login_token字段,此字段后续接口请求中需要携带在请求头header中,字段名为Token。

三、关于特殊参数的post、get请求

部分接口需要的特殊参数类型,如:array、object等类型

array类型:按 val1,val2,val3 的形式传值

object类型:按 json 形式传值

本篇文章是否对您有所帮助呢?

更多帮助文章

排行 相关推荐 精选案例
微投票开发者介绍
微投票开发者介绍

微投票提供给具有开发能力的用户接口支持,可将投票活动集成在任何第三方小程序、App当中,帮助用户快速搭建具有高可用的投票解决方案。开发者无需关心投票细节,只需创建活动、对接接口即可实现投票活动的快速对接。

申请开发者密钥
申请开发者密钥

用户登陆后台后,点击导航栏的“开发者信息”进入开发者信息页面;2、如果尚未开通,则需要点击页面“开发权限”区域的续费及开通进行购买开通;3、购买成功之后即可获取当前的开发者AccessKey/SecretKey密钥信息。

客户端/服务端接口列表
客户端/服务端接口列表

微投票对开发者开放了【服务端】和【客户端】两种接口。客户端接口适用于:开发者直接使用前端页面ajax请求微投票的接口;服务端接口适用于:开发者前端页面请求开发者的服务器,由服务器进行中转调用微投票的接口。【服务端】第三方用户登录接口地址:/tpopen/guestLogin请求方式:POST请求参数:nickname必填string投票者昵称,用于后台投票统计中的显示headim

签名生成方法
签名生成方法

开发者服务端在与微投票服务器交互的过程中,需要对参数进行加签等操作,下边介绍具体规则。一、服务端1、请求微投票接口,需要根据参数生成一个签名(sign)并携带在参数中进行请求,最终的请求形式如下:http://接口地址?sign=签名&timestamp=当前秒级时间戳&nonce=随机字符串并且除sign外的其余参数都需要参与签名计算。2、签名生成方法:将请求参

客户端接口文档
客户端接口文档

本接口可以帮助用户快速对接投票活动到第三方自行开发的H5中,本文档适用于举办方前端直接对接微投票服务接口。第1步:引导用户访问https://server.weitoupiao.com/api/tpweb/oauth?back_url=授权完毕跳转地址&id=投票id第2步:用户同意授权后,页面将跳转到 back_url ,并且携带一个ck=xxx的参数。第3

服务端接口文档
服务端接口文档

开发者接口可以帮助用户快速对接投票活动到第三方小程序或App当中,无论开发者服务器环境是哪种(如:php/java/python/.net等)。对接第三方服务投票者投票前,第三方App调用 tpopen/guestLogin 接口,将投票者进行登录,即可进行后续投票操作。接口前缀:https://server.weitoupiao.com/api/tpopen接口列表:http:

服务端接口文档
服务端接口文档

开发者接口可以帮助用户快速对接投票活动到第三方小程序或App当中,无论开发者服务器环境是哪种(如:php/java/python/.net等)。对接第三方服务投票者投票前,第三方App调用 tpopen/guestLogin 接口,将投票者进行登录,即可进行后续投票操作。接口前缀:https://server.weitoupiao.com/api/tpopen接口列表:http:

客户端接口文档
客户端接口文档

本接口可以帮助用户快速对接投票活动到第三方自行开发的H5中,本文档适用于举办方前端直接对接微投票服务接口。第1步:引导用户访问https://server.weitoupiao.com/api/tpweb/oauth?back_url=授权完毕跳转地址&id=投票id第2步:用户同意授权后,页面将跳转到 back_url ,并且携带一个ck=xxx的参数。第3

签名生成方法
签名生成方法

开发者服务端在与微投票服务器交互的过程中,需要对参数进行加签等操作,下边介绍具体规则。一、服务端1、请求微投票接口,需要根据参数生成一个签名(sign)并携带在参数中进行请求,最终的请求形式如下:http://接口地址?sign=签名&timestamp=当前秒级时间戳&nonce=随机字符串并且除sign外的其余参数都需要参与签名计算。2、签名生成方法:将请求参

客户端/服务端接口列表
客户端/服务端接口列表

微投票对开发者开放了【服务端】和【客户端】两种接口。客户端接口适用于:开发者直接使用前端页面ajax请求微投票的接口;服务端接口适用于:开发者前端页面请求开发者的服务器,由服务器进行中转调用微投票的接口。【服务端】第三方用户登录接口地址:/tpopen/guestLogin请求方式:POST请求参数:nickname必填string投票者昵称,用于后台投票统计中的显示headim

申请开发者密钥
申请开发者密钥

用户登陆后台后,点击导航栏的“开发者信息”进入开发者信息页面;2、如果尚未开通,则需要点击页面“开发权限”区域的续费及开通进行购买开通;3、购买成功之后即可获取当前的开发者AccessKey/SecretKey密钥信息。

微投票开发者介绍
微投票开发者介绍

微投票提供给具有开发能力的用户接口支持,可将投票活动集成在任何第三方小程序、App当中,帮助用户快速搭建具有高可用的投票解决方案。开发者无需关心投票细节,只需创建活动、对接接口即可实现投票活动的快速对接。

微投票开发者介绍
微投票开发者介绍

微投票提供给具有开发能力的用户接口支持,可将投票活动集成在任何第三方小程序、App当中,帮助用户快速搭建具有高可用的投票解决方案。开发者无需关心投票细节,只需创建活动、对接接口即可实现投票活动的快速对接。

服务端接口文档
服务端接口文档

开发者接口可以帮助用户快速对接投票活动到第三方小程序或App当中,无论开发者服务器环境是哪种(如:php/java/python/.net等)。对接第三方服务投票者投票前,第三方App调用 tpopen/guestLogin 接口,将投票者进行登录,即可进行后续投票操作。接口前缀:https://server.weitoupiao.com/api/tpopen接口列表:http:

客户端接口文档
客户端接口文档

本接口可以帮助用户快速对接投票活动到第三方自行开发的H5中,本文档适用于举办方前端直接对接微投票服务接口。第1步:引导用户访问https://server.weitoupiao.com/api/tpweb/oauth?back_url=授权完毕跳转地址&id=投票id第2步:用户同意授权后,页面将跳转到 back_url ,并且携带一个ck=xxx的参数。第3

签名生成方法
签名生成方法

开发者服务端在与微投票服务器交互的过程中,需要对参数进行加签等操作,下边介绍具体规则。一、服务端1、请求微投票接口,需要根据参数生成一个签名(sign)并携带在参数中进行请求,最终的请求形式如下:http://接口地址?sign=签名&timestamp=当前秒级时间戳&nonce=随机字符串并且除sign外的其余参数都需要参与签名计算。2、签名生成方法:将请求参

客户端/服务端接口列表
客户端/服务端接口列表

微投票对开发者开放了【服务端】和【客户端】两种接口。客户端接口适用于:开发者直接使用前端页面ajax请求微投票的接口;服务端接口适用于:开发者前端页面请求开发者的服务器,由服务器进行中转调用微投票的接口。【服务端】第三方用户登录接口地址:/tpopen/guestLogin请求方式:POST请求参数:nickname必填string投票者昵称,用于后台投票统计中的显示headim

申请开发者密钥
申请开发者密钥

用户登陆后台后,点击导航栏的“开发者信息”进入开发者信息页面;2、如果尚未开通,则需要点击页面“开发权限”区域的续费及开通进行购买开通;3、购买成功之后即可获取当前的开发者AccessKey/SecretKey密钥信息。

投票案例推荐