【调度系统】广东民航医疗快线调度系统源代码
wzp
2024-12-05 9dc0d99742f5526321e1b5fdb0dec10e6725415e
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
<% @LANGUAGE="VBSCRIPT" CODEPAGE="65001" %> 
<% Session.CodePage=65001 %> 
<% Response.charset = "utf-8" %>
<!--#include virtual="/inc/odbc.asp"-->
<%
If is_test<>"1" Then APPSECRET="已隐藏"
%>
<head>
<meta charset="UTF-8">
<title><%=WEBNAME%>API开发文档</title>
<meta name="generator" content="MediaWiki 1.17.0">
<link rel="stylesheet" href="css.css">
<!--[if lt IE 7]><style type="text/css">body{behavior:url("/wiki/skins/vector/csshover.min.htc")}</style><![endif]-->
 
 
</head>
<body class="mediawiki ltr ns-0 ns-subject skin-vector">
 
 
<div class="mainwrapper">
            <div class="inner">
                <!-- panel -->
                <!--#include FILE="menu_left.asp"-->
                <!-- /panel -->
                <!-- content -->
                <div id="content">
 
                    <div id="mw-js-message" style="display:none;"></div>
                                        <!-- firstHeading -->
                    <div class="content_hd">
                        <h2 id="firstHeading" class="">签名生成算法</h2>
                        <div class="info">
                             
                        </div>
                    </div>
                    <!-- /firstHeading -->
                    <!-- bodyContent -->
                    <div id="bodyContent" class="bodyContent">
                        <!-- subtitle -->
                        <div id="contentSub"></div>
                        <!-- /subtitle -->
 
                                                <!-- bodytext -->
                        <p>签名生成的通用步骤如下:</p>
                        <p>第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值去掉"="与"&"号后的格式(即Key1Value1Key2Value2…)拼接成字符串stringA。</p>
                        <p>特别注意以下重要规则:</p>
                        <p>◆ 参数名ASCII码从小到大排序(字典序);</p>
                        <p>◆ 如果参数的值为空不参与签名;</p>
                        <p>◆ 参数名区分大小写;</p>
                        <p>◆ 传送的sign参数不参与签名。</p>
                        <p>◆ 接口可能增加字段,验证签名时必须支持增加的扩展字段</p>
                        <p>第二步,在stringA最后拼接上APPSECRET得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为小写,得到sign值signValue。</p>
                        <p>APPSECRET:<%=APPSECRET%></p>
</p><p><b>假设传送的参数如下</b>
</p>
<pre>
method=User_Login
LoginType=0
UserID=10
</pre>
<p><b>第一步:对参数按照KeyValue的格式,并按照参数名ASCII字典序排序如下:</b>
</p>
<pre>stringA="LoginType0UserID10methodUser_Login";</pre>
<p><b>第二步:拼接API密钥:</b>
</p>
<pre>
APPSECRET="<%=APPSECRET%>"
stringSignTemp=stringA+APPSECRET
sign=MD5(stringSignTemp).toLowerCase()="9A0A8659F005D6984697E2CA0A9CF3B7"
</pre>
<p><b>最终得到最终发送的数据:</b>
</p>
<pre>method=User_Login&LoginType=0&UserID=10&Sign=9A0A8659F005D6984697E2CA0A9CF3B7</pre>
 
                        <!-- /bodytext -->
                                                <!-- catlinks -->
                        <div id="catlinks" class="catlinks catlinks-allhidden"></div>                        <!-- /catlinks -->
                                                                        <div class="visualClear"></div>
                    </div>
                    <!-- /bodyContent -->
                </div>
                <!-- /content -->
                
            </div>
        </div>
</body>