API文档示例

API文档示例


微信 - JSAPI 网页支付

<!----><p><strong>请求URL:</strong> </p> <ul> <li><code style="color: rgb(221, 17, 68);">http://pay.gtyzf.com/api/do_jsapi.html</code></li></ul> <p><strong>请求方式:</strong></p> <ul> <li>POST </li></ul> <p><strong>参数:</strong> </p> # 请看下方↓ <div style="width: 100%;overflow-x: auto;"><table> <thead> <tr style="background-color: rgb(64, 158, 255); color: rgb(255, 255, 255);"> <th style="text-align: left; width: 178px;">参数名</th> <th style="text-align: left; width: 178px;">必选</th> <th style="text-align: left; width: 178px;">类型</th> <th style="width: 178px;">说明</th> </tr> </thead> <tbody> <tr style="background-color: rgb(255, 255, 255);"> <td style="text-align:left;">id</td> <td style="text-align:left;">是</td> <td style="text-align:left;">string</td> <td>商户ID</td> </tr> <tr style="background-color: rgb(255, 255, 255);"> <td style="text-align:left;">openid</td> <td style="text-align:left;">是</td> <td style="text-align:left;">string</td> <td>openid,可以通过获取openid接口获取</td> </tr> <tr style="background-color: rgb(255, 255, 255);"> <td style="text-align:left;">mchid</td> <td style="text-align:left;">是</td> <td style="text-align:left;">string</td> <td>MCHID微信商户号</td> </tr> <tr style="background-color: rgb(255, 255, 255);"> <td style="text-align:left;">trade_no</td> <td style="text-align:left;">是</td> <td style="text-align:left;">string</td> <td>商户订单号</td> </tr> <tr style="background-color: rgb(255, 255, 255);"> <td style="text-align:left;">notify_url</td> <td style="text-align:left;">是</td> <td style="text-align:left;">string</td> <td>支付结果异步通知地址</td> </tr> <tr style="background-color: rgb(255, 255, 255);"> <td style="text-align:left;">name</td> <td style="text-align:left;">是</td> <td style="text-align:left;">string</td> <td>商品名称</td> </tr> <tr style="background-color: rgb(255, 255, 255);"> <td style="text-align:left;">money</td> <td style="text-align:left;">是</td> <td style="text-align:left;">string</td> <td>金额</td> </tr> <tr style="background-color: rgb(255, 255, 255);"> <td style="text-align:left;">sign</td> <td style="text-align:left;">是</td> <td style="text-align:left;">string</td> <td>签名字符串</td> </tr> <tr style="background-color: rgb(255, 255, 255);"> <td style="text-align:left;">sign_type</td> <td style="text-align:left;">是</td> <td style="text-align:left;">string</td> <td>签名方式</td> </tr> </tbody> </table></div> <p><strong>返回示例</strong></p> <pre class="prettyprint linenums prettyprinted" style="padding-left: 5px; background-color: rgb(252, 252, 252); border: 1px solid rgb(225, 225, 232);"><ol class="linenums" style="padding-left: 5px;"><li class="L0" style="background-color: rgb(252, 252, 252);"><code style="color: rgb(221, 17, 68);"><span class="pun">{</span><span class="str">"code"</span><span class="pun">:</span><span class="lit">1</span><span class="pun">,</span><span class="str">"code_url"</span><span class="pun">:</span><span class="str">"weixin://wxpay/bizpayurl?pr=uYV5hjW"</span><span class="pun">}</span></code></li></ol></pre><div class="article-body kancloud-markdown-body"><p><strong>JSAPI 网页支付</strong></p><br><h6><a id="_1"></a>说明</h6><br><ul><li>使用前先再<a href="http://pay.gtyzf.com/user" target="_blank">支付狗后台</a>设置域名支付目录,最多设置5个支付授权目录, 且域名必须通过 ICP 备案</li><li>先通过<strong>获取openid接口</strong>获得用户 openid</li><li>然后请求接口,获得 jsapi 支付参数,再在网页用 WeixinJSBridge 调起支付</li><li>调用方法为 POST</li></ul><br><br>具体使用<br><p>在您成功创建订单之后,你会获取到一系列jsapi_开头的参数,这些参数是用来在微信端发起支付用的,如下:</p><br><blockquote class="default"><p>注意在 月牙商户后台 配置jsapi支付目录哦。</p></blockquote><br><pre class="prettyprint linenums prettyprinted" style="padding-left: 5px; background-color: rgb(252, 252, 252); border: 1px solid rgb(225, 225, 232);"><ol class="linenums" style="padding-left: 5px;"><li class="L0" style="background-color: rgb(252, 252, 252);"><code class="ಠhighlight-container" style="color: rgb(221, 17, 68);"><span class="token operator"><span class="tag">&lt;</span></span><span class="tag">script</span><span class="token operator"><span class="tag">&gt;</span></span><br><span class="pln"> </span><span class="token keyword"><span class="kwd">function</span></span><span class="pln"> </span><span class="token function"><span class="pln">onBridgeReady</span></span><span class="token punctuation"><span class="pun">(</span></span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">{</span></span><br><span class="pln"> </span><span class="typ">WeixinJSBridge</span><span class="token punctuation"><span class="pun">.</span></span><span class="token function"><span class="pln">invoke</span></span><span class="token punctuation"><span class="pun">(</span></span><br><span class="pln"> </span><span class="token string"><span class="pun">‘</span><span class="pln">getBrandWCPayRequest</span><span class="pun">’</span></span><span class="token punctuation"><span class="pun">,</span></span><span class="pln"> </span><span class="token punctuation"><span class="pun">{</span></span><br><span class="pln"> </span><span class="token string"><span class="pun">“</span><span class="pln">appId</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">:</span></span><span class="token string"><span class="pun">“</span><span class="pln">wx25db1b0b82771257</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">,</span></span><span class="pln"> </span><span class="token comment"><span class="com">//公众号appid</span></span><br><span class="pln"> </span><span class="token string"><span class="pun">“</span><span class="pln">timeStamp</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">:</span></span><span class="token string"><span class="pun">“</span><span class="lit">1569940830</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">,</span></span><span class="pln"> </span><span class="token comment"><span class="com">//时间戳,自1970年以来的秒数</span></span><br><span class="pln"> </span><span class="token string"><span class="pun">“</span><span class="pln">nonceStr</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">:</span></span><span class="token string"><span class="pun">“</span><span class="typ">QkB0RygMBF9krHRI</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">,</span></span><span class="pln"> </span><span class="token comment"><span class="com">//随机串</span></span><br><span class="pln"> </span><span class="token string"><span class="pun">“</span><span class="pln">package</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">:</span></span><span class="token string"><span class="pun">“</span><span class="pln">prepay_id</span><span class="pun">=</span><span class="pln">wx0122403072403685d6f5bbc51475783800</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">,</span></span><br><span class="pln"> </span><span class="token string"><span class="pun">“</span><span class="pln">signType</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">:</span></span><span class="token string"><span class="pun">“</span><span class="pln">MD5</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">,</span></span><br><span class="pln"> </span><span class="token string"><span class="pun">“</span><span class="pln">paySign</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">:</span></span><span class="token string"><span class="pun">“</span><span class="pln">E6790E6CA97D6873858B77EFA567FE9A</span><span class="pun">”</span></span><span class="pln"> </span><span class="token comment"><span class="com">//微信签名</span></span><br><span class="pln"> </span><span class="token punctuation"><span class="pun">}</span></span><span class="token punctuation"><span class="pun">,</span></span><br><span class="pln"> </span><span class="token keyword"><span class="kwd">function</span></span><span class="token punctuation"><span class="pun">(</span></span><span class="pln">res</span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">{</span></span><br><span class="pln"> </span><span class="token keyword"><span class="kwd">if</span></span><span class="token punctuation"><span class="pun">(</span></span><span class="pln">res</span><span class="token punctuation"><span class="pun">.</span></span><span class="pln">err_msg </span><span class="token operator"><span class="pun">==</span></span><span class="pln"> </span><span class="token string"><span class="pun">“</span><span class="pln">get_brand_wcpay_request</span><span class="pun">:</span><span class="pln">ok</span><span class="pun">”</span></span><span class="pln"> </span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">{</span></span><br><span class="pln"> </span><span class="token function"><span class="pln">alert</span></span><span class="token punctuation"><span class="pun">(</span></span><span class="token string"><span class="pun">‘支付成功’</span></span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">;</span></span><br><span class="pln"> </span><span class="token punctuation"><span class="pun">}</span></span><br><span class="pln"> </span><span class="token punctuation"><span class="pun">}</span></span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">;</span></span><br><span class="pln"> </span><span class="token punctuation"><span class="pun">}</span></span><br><span class="pln"> </span><span class="token keyword"><span class="kwd">if</span></span><span class="pln"> </span><span class="token punctuation"><span class="pun">(</span></span><span class="kwd">typeof</span><span class="pln"> </span><span class="typ">WeixinJSBridge</span><span class="pln"> </span><span class="token operator"><span class="pun">==</span></span><span class="pln"> </span><span class="token string"><span class="pun">“</span><span class="kwd">undefined</span><span class="pun">”</span></span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">{</span></span><br><span class="pln"> </span><span class="token keyword"><span class="kwd">if</span></span><span class="token punctuation"><span class="pun">(</span></span><span class="pln"> document</span><span class="token punctuation"><span class="pun">.</span></span><span class="pln">addEventListener </span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">{</span></span><br><span class="pln"> document</span><span class="token punctuation"><span class="pun">.</span></span><span class="token function"><span class="pln">addEventListener</span></span><span class="token punctuation"><span class="pun">(</span></span><span class="token string"><span class="pun">‘</span><span class="typ">WeixinJSBridgeReady</span><span class="pun">’</span></span><span class="token punctuation"><span class="pun">,</span></span><span class="pln"> onBridgeReady</span><span class="token punctuation"><span class="pun">,</span></span><span class="pln"> </span><span class="token boolean"><span class="kwd">false</span></span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">;</span></span><br><span class="pln"> </span><span class="token punctuation"><span class="pun">}</span></span><span class="token keyword"><span class="kwd">else</span></span><span class="pln"> </span><span class="token keyword"><span class="kwd">if</span></span><span class="pln"> </span><span class="token punctuation"><span class="pun">(</span></span><span class="pln">document</span><span class="token punctuation"><span class="pun">.</span></span><span class="pln">attachEvent</span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">{</span></span><br><span class="pln"> document</span><span class="token punctuation"><span class="pun">.</span></span><span class="token function"><span class="pln">attachEvent</span></span><span class="token punctuation"><span class="pun">(</span></span><span class="token string"><span class="pun">‘</span><span class="typ">WeixinJSBridgeReady</span><span class="pun">’</span></span><span class="token punctuation"><span class="pun">,</span></span><span class="pln"> onBridgeReady</span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">;</span></span><br><span class="pln"> document</span><span class="token punctuation"><span class="pun">.</span></span><span class="token function"><span class="pln">attachEvent</span></span><span class="token punctuation"><span class="pun">(</span></span><span class="token string"><span class="pun">‘</span><span class="pln">onWeixinJSBridgeReady</span><span class="pun">’</span></span><span class="token punctuation"><span class="pun">,</span></span><span class="pln"> onBridgeReady</span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">;</span></span><br><span class="pln"> </span><span class="token punctuation"><span class="pun">}</span></span><br><span class="pln"> </span><span class="token punctuation"><span class="pun">}</span></span><span class="token keyword"><span class="kwd">else</span></span><span class="token punctuation"><span class="pun">{</span></span><br><span class="pln"> </span><span class="token function"><span class="pln">onBridgeReady</span></span><span class="token punctuation"><span class="pun">(</span></span><span class="token punctuation"><span class="pun">)</span></span><span class="token punctuation"><span class="pun">;</span></span><br><span class="pln"> </span><span class="token punctuation"><span class="pun">}</span></span><br><span class="token operator"><span class="tag">&lt;</span></span><span class="token operator"><span class="tag">/</span></span><span class="tag">script</span><span class="token operator"><span class="tag">&gt;</span></span><br><br></code></li></ol></pre><br><p>上面的代码是jsapi支付的js代码,我们需要做的就是拿我们创建订单后返回的参数替换其中的参数即可。</p><br></div> </div>

页面列表

ITEM_HTML