cpay


小程序支付获取openid

<h1>小程序获取openid(商户自有小程序)</h1> <p>接⼊步骤说明:</p> <ol> <li>通过授权获取⽤户 open_id a. ⼩程序端调⽤ wx.login(Object object)接⼝ [获取登录凭证(code)](<a href="https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html">https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html</a> &quot;获取登录凭证(code)&quot;)</li> </ol> <p>示例代码如下:</p> <pre><code>wx.login({ success (res) { if (res.code) { //发起网络请求 wx.request({ url: 'https://example.com/onLogin', data: { code: res.code } }) } else { console.log('登录失败!' + res.errMsg) } } })</code></pre> <p>b. 商户端使⽤前⼀步获取的code 换取 open_id ,后台请求以下链接 [获取openID](<a href="https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/login/auth.code2Session.html">https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/login/auth.code2Session.html</a> &quot;获取openID&quot;);</p> <p>示例代码如下:</p> <pre><code>/*GET https://api.weixin.qq.com/sns/jscode2session? appid=APPID&amp;amp;secret=SECRET&amp;amp;js_code=JSCODE&amp;amp;grant_type=authorization_code*/ url = 'https://api.weixin.qq.com/sns/jscode2session' params = { 'appid': app_id, 'secret': 'wx_secret', 'js_code': wx_code, 'grant_type': 'authorization_code', } resp = requests.get(url, params, timeout=15) result_dict = json.loads(resp.text) openid=result_dict.get('openid') </code></pre> <h1>小程序获取openid(通过服务商获取)</h1> <p><strong>接口地址</strong></p> <p><code>正式</code> <code>https://cpay.xiangma365.com/openpay/jsapi/getMiniOpenId</code></p> <p><strong>请求方式</strong></p> <p><code>POST</code> <code>GET</code></p> <p><strong>请求头部</strong></p> <p><code>Content-Type:application/json</code></p> <p><strong>请求参数</strong></p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">约束</th> <th style="text-align: left;">描述</th> <th style="text-align: left;">示例</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">code</td> <td style="text-align: left;">string</td> <td style="text-align: left;">M</td> <td style="text-align: left;">小程序登陆口登录凭证</td> <td style="text-align: left;">0a1OrDFa1X1RwF0GtsFa1RuYH04OrDFt 参照[微信文档](<a href="https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html">https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html</a> &quot;微信文档&quot;)</td> </tr> <tr> <td style="text-align: left;">mch_no</td> <td style="text-align: left;">string</td> <td style="text-align: left;">M</td> <td style="text-align: left;">商户号,入网后可获取</td> <td style="text-align: left;">Y52212200002</td> </tr> </tbody> </table> <p><strong>请求示例(获取code)</strong></p> <pre><code>wx.login({ success (res) { if (res.code) { //发起网络请求 wx.request({ url: 'https://example.com/onLogin', data: { code: res.code } }) } else { console.log('登录失败!' + res.errMsg) } } })</code></pre> <p>示例参照:<a href="https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html">https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html</a></p> <p><strong>请求示例(通过code+mcho_no换取openid)</strong></p> <pre><code>wx.login({ provider: &amp;quot;weixin&amp;quot;, success: res =&amp;gt; { console.log('code=====',res.code); wx.request({ url: 'https://cpay.xiangma365.com/openpay/jsapi/getminiopenid', data:{ 'code':res.code, 'mch_no':'852306190005' }, method:'POST', header: { 'content-type': 'application/json' }, success: function (result) { console.log(result) if(result.statusCode === 200) { console.log('openid=======',result.data.data.openid); // uni.setStorageSync('openid', result.data.openid); // uni.setStorageSync('session_key', result.data.session_key); } } }) } }) </code></pre> <p><strong>响应参数</strong></p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">必填</th> <th style="text-align: left;">描述</th> <th style="text-align: left;">示例</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">code</td> <td style="text-align: left;">string</td> <td style="text-align: left;">M</td> <td style="text-align: left;">状态码</td> <td style="text-align: left;">200</td> </tr> <tr> <td style="text-align: left;">data</td> <td style="text-align: left;">string</td> <td style="text-align: left;">M</td> <td style="text-align: left;">openid信息</td> <td style="text-align: left;">{openid: &quot;oyf3m5olbjj2Lh20BsAUZrl6hoBk&quot;, session_key: &quot;IVuhirQYqOQbG6cAS+1UJA==&quot;}</td> </tr> <tr> <td style="text-align: left;">message</td> <td style="text-align: left;">string</td> <td style="text-align: left;">M</td> <td style="text-align: left;">提示信息</td> <td style="text-align: left;">操作成功</td> </tr> </tbody> </table>

页面列表

ITEM_HTML