onenet 新版MQTTS 连接代码分享

                        <p>luat 编写代码连接onenet 新版MQTTS代码</p><p>代码功能:1.动态生成token 密钥&nbsp;</p><p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.根据IMEI号码 自动创建 平台设备</p><p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3. 利用生成的token 连接MQTTS 上传数据</p><p>工程代码分享github&nbsp;https://github.com/CQADu/luat-onenet-MQTTS.git</p><p>token</p><table class="highlight tab-size js-file-line-container" style="border-collapse: collapse; border-spacing: 0px; box-sizing: border-box; color: rgb(36, 41, 46); font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; font-size: 14px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px;" data-tab-size="8"><tbody style="box-sizing: border-box;"><tr style="box-sizing: border-box;"><td class="blob-code blob-code-inner js-file-line" id="LC61" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--[[</span></span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L62" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="62"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC62" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">连接onenet后台 的token 创建函数</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L63" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="63"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC63" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">参数 et 密钥过期时间点 字符串</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L64" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="64"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC64" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">&nbsp;&nbsp;&nbsp;&nbsp; res 实例名称 有API访问的密钥 和设备mqtt 登陆用的密钥</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L65" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="65"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC65" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">     access_key 产品key</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L66" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="66"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC66" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">返回连接用的 密钥</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L67" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="67"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC67" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">说明:加密方式 为sha1</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L68" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="68"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC68" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--<span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">]]</span></span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L69" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="69"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC69" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">local</span> <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">function</span> <span class="pl-en" style="box-sizing: border-box; color: rgb(111, 66, 193);">OnenetTokenCreate</span>(<span class="pl-smi" style="box-sizing: border-box; color: rgb(36, 41, 46);">et</span> , <span class="pl-smi" style="box-sizing: border-box; color: rgb(36, 41, 46);">res</span> ,<span class="pl-smi" style="box-sizing: border-box; color: rgb(36, 41, 46);">access_key</span>)</td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L70" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="70"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC70" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    <span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--</span> 密钥时间只能一个小时有效 </span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L71" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="71"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC71" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    <span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--</span>res = "products/".. tostring(productsId)</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L72" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="72"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC72" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    <span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--</span>et = os.time() + 3600</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L73" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="73"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC73" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    <span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--</span>et = 1578231806</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L74" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="74"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC74" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    method <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">=</span> <span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span>sha1<span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span></span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L75" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="75"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC75" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    version <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">=</span> <span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span>2018-10-31<span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span></span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L76" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="76"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC76" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    org1 <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">=</span> et <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span> <span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span><span class="pl-cce" style="box-sizing: border-box;">\n</span><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span></span> <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span> method <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span> <span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span><span class="pl-cce" style="box-sizing: border-box;">\n</span><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span></span> <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span>&nbsp; res <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span> <span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span><span class="pl-cce" style="box-sizing: border-box;">\n</span><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span></span> <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span> version</td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L77" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="77"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC77" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    log.<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">info</span>(<span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span>org1=<span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span></span><span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span>org1)</td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L78" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="78"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC78" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    key&nbsp; <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">=</span> crypto.<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">base64_decode</span>(access_key,<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">string.len</span>(access_key)) <span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--</span> 解码</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L79" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="79"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC79" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><br></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L80" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="80"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC80" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    sign_b <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">=</span> crypto.<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">hmac_sha1</span>(org1,<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">string.len</span>(org1),key,<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">string.len</span>(key)) <span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--</span> 采用hmac 里面的sha1 加密算法</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L81" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="81"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC81" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    log.<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">info</span>(<span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span>Hmac_sha1 Hex data = <span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span></span> <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span> sign_b)</td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L82" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="82"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC82" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    sign_b <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">=</span> <span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">hex_to_binary</span>(sign_b)</td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L83" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="83"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC83" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    log.<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">info</span>(<span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span>Hmac_sha1 Hex data2 = <span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span></span> <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span> sign_b)</td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L84" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="84"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC84" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><br></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L85" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="85"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC85" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    sign <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">=</span> crypto.<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">base64_encode</span>( sign_b, <span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">string.len</span>(sign_b) ) <span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--</span> 对hmac 出来的数据进行 base64 编码</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L86" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="86"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC86" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><br></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L87" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="87"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC87" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    hmacUrl <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">=</span> <span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">urlEncode</span>(sign)</td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L88" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="88"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC88" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    log.<span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">info</span>(<span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span>经过url 编码的hamc 加密码=<span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">"</span></span> <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">..</span> hmacUrl)</td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L89" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="89"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC89" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    resUrl <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">=</span> <span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">urlEncode</span>(res) <span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);"><span class="pl-c" style="box-sizing: border-box; color: rgb(106, 115, 125);">--</span> res 字符串也 url 编码</span></td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L90" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="90"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC90" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;">    <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">return</span> <span class="pl-c1" style="box-sizing: border-box; color: rgb(0, 92, 197);">string.format</span>(<span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span>version=%s&amp;res=%s&amp;et=%s&amp;method=%s&amp;sign=%s<span class="pl-pds" style="box-sizing: border-box; color: rgb(3, 47, 98);">'</span></span> ,version, resUrl, et, method, hmacUrl) </td>
  </tr>
  <tr style="box-sizing: border-box;">
    <td class="blob-num js-line-number" id="L91" style="box-sizing: border-box; color: rgba(27, 31, 35, 0.3); cursor: pointer; font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; min-width: 50px; -ms-user-select: none; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; text-align: right; vertical-align: top; white-space: nowrap; width: 1%;" data-line-number="91"></td>
    <td class="blob-code blob-code-inner js-file-line" id="LC91" style="box-sizing: border-box; color: rgb(36, 41, 46); font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; font-size: 12px; line-height: 20px; overflow: visible; overflow-wrap: normal; padding-bottom: 0px; padding-left: 10px; padding-right: 10px; padding-top: 0px; position: relative; vertical-align: top; white-space: pre;"><span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">end</span></td></tr></tbody></table><p><b></b><i></i><u></u><sub></sub><sup></sup><strike></strike><br></p>

上次更新 2021-01-28