SssOpenapi.php
1.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?php
/**
* 闪时送开放平台接口调用工具类
* 详情:签名,接口调用
* 版本:1.0
* 日期:2019-11-25
* 说明:
* 以下代码只是为了方便对接商户测试而提供的样例代码,对接商户可以根据自己的需求,按照技术文档编写,代码仅供参考。
*/
class SssOpenapi{
/**
* 闪时送门店id
*/
private $sss_shop_id;
/**
* 门店绑定验证码
*/
private $sss_shop_token;
/**
* api url地址
*/
private $url;
/**
* 签名生成signature
*/
public function getSign($data,$appSecret){
/* foreach ($param as $k => $v) {
$data[$k] = $v;
}*/
ksort($data);
$str = $appSecret;
foreach ($data as $k => $v) {
if ($v === false) $v = 'false';
if ($v === true) $v = 'true';
if (empty($v) && $v != 0) continue;
$str .= $k . $v;
}
return strtolower(sha1($str));
}
/**
* 发送请求,POST
* @param $url 指定URL完整路径地址
* @param $data 请求的数据
*/
public function requestWithPost($url, $data){
// json
$headers = array(
'Content-Type: application/json',
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
}