{"id":30245,"date":"2024-11-25T16:49:31","date_gmt":"2024-11-25T08:49:31","guid":{"rendered":"https:\/\/fwq.ai\/blog\/30245\/"},"modified":"2024-11-25T16:49:31","modified_gmt":"2024-11-25T08:49:31","slug":"%e5%88%86%e4%ba%ab%e5%be%ae%e4%bf%a1%e5%85%ac%e4%bc%97%e5%8f%b7%e5%bc%80%e5%8f%91%e5%88%b7%e5%8d%a1%e6%94%af%e4%bb%98%e7%9a%84%e5%ae%9e%e4%be%8b%e6%95%99%e7%a8%8b","status":"publish","type":"post","link":"https:\/\/fwq.ai\/blog\/30245\/","title":{"rendered":"\u5206\u4eab\u5fae\u4fe1\u516c\u4f17\u53f7\u5f00\u53d1\u5237\u5361\u652f\u4ed8\u7684\u5b9e\u4f8b\u6559\u7a0b"},"content":{"rendered":"<p>\u6b22\u8fce\u7559\u8a00\u3001\u8f6c\u53d1<\/p>\n<p>\u6b64\u7bc7\u6587\u7ae0\u5177\u4f53\u6765\u804a\u804a\u5fae\u4fe1\u5237\u5361\u652f\u4ed8<\/p>\n<p><strong><span style=\"font-size: 20px\">\u573a\u666f\u4ecb\u7ecd<\/span><\/strong><\/p>\n<ul>\n<li>\n<p>\u6b65\u9aa41\uff1a\u7528\u6237\u9009\u62e9\u5237\u5361\u652f\u4ed8\u4ed8\u6b3e\u5e76\u6253\u5f00\u5fae\u4fe1\uff0c\u8fdb\u5165\u201c\u6211\u201d-&gt;\u201c\u94b1\u5305\u201d-&gt;\u201c\u5237\u5361\u201d\u6761\u7801\u754c\u9762<\/p>\n<\/li>\n<li>\n<p>\u6b65\u9aa42\uff1a\u6536\u94f6\u5458\u5728\u5546\u6237\u7cfb\u7edf\u64cd\u4f5c\u751f\u6210\u652f\u4ed8\u8ba2\u5355\uff0c\u7528\u6237\u786e\u8ba4\u652f\u4ed8\u91d1\u989d<\/p>\n<\/li>\n<li>\n<p>\u6b65\u9aa43\uff1a\u5546\u6237\u6536\u94f6\u5458\u7528\u626b\u7801\u8bbe\u5907\u626b\u63cf\u7528\u6237\u7684\u6761\u7801\/\u4e8c\u7ef4\u7801\uff0c\u5546\u6237\u6536\u94f6\u7cfb\u7edf\u63d0\u4ea4\u652f\u4ed8<\/p>\n<\/li>\n<li>\n<p>\u6b65\u9aa44\uff1a\u5fae\u4fe1\u652f\u4ed8\u540e\u53f0\u7cfb\u7edf\u6536\u5230\u652f\u4ed8\u8bf7\u6c42\uff0c\u6839\u636e\u9a8c\u8bc1\u5bc6\u7801\u89c4\u5219\u5224\u65ad\u662f\u5426\u9a8c\u8bc1\u7528\u6237\u7684\u652f\u4ed8\u5bc6\u7801\uff0c\u4e0d\u9700\u8981\u9a8c\u8bc1\u5bc6\u7801\u7684\u4ea4\u6613\u76f4\u63a5\u53d1\u8d77\u6263\u6b3e\uff0c\u9700\u8981\u9a8c\u8bc1\u5bc6\u7801\u7684\u4ea4\u6613\u4f1a\u5f39\u51fa\u5bc6\u7801\u8f93\u5165\u6846\u3002\u652f\u4ed8\u6210\u529f\u540e\u5fae\u4fe1\u7aef\u4f1a\u5f39\u51fa\u6210\u529f\u9875\u9762\uff0c\u652f\u4ed8\u5931\u8d25\u4f1a\u5f39\u51fa\u9519\u8bef\u63d0\u793a<\/p>\n<\/li>\n<\/ul>\n<h2>\u5546\u6237\u4fa7\u6d41\u7a0b<\/h2>\n<hr>\n<p>\u8be6\u7ec6\u6587\u6863\u4ecb\u7ecd\u53ea\u9700\u8981\u7b80\u5355\u4e86\u89e3\u6d41\u7a0b \u70b9\u51fb\u8fd9\u91cc<\/p>\n<hr>\n<p>\u5237\u5361\u652f\u4ed8\u63a5\u5165\u6a21\u5f0f\u53ef\u5206\u4e3a\uff1a\u5546\u6237\u540e\u53f0\u63a5\u5165(\u63d0\u4f9b\u7ed9\u522b\u4eba\u4f7f\u7528\u7c7b\u4f3c\u7b2c\u4e09\u65b9)\u548c\u95e8\u5e97\u63a5\u5165(\u81ea\u5df1\u4f7f\u7528)\uff1b\u533a\u522b\u5c31\u662f\u652f\u4ed8\u7ed3\u679c\u591a\u5206\u53d1\u4e00\u6b21\u3002<\/p>\n<p>\u6839\u636e\u7528\u6237\u662f\u5426\u9700\u8981\u8f93\u5165\u652f\u4ed8\u5bc6\u7801\u53ef\u5206\u4e3a\uff1a\u514d\u5bc6\u6a21\u5f0f\u548c\u9a8c\u5bc6\u6a21\u5f0f\u3002<\/p>\n<h2>\u652f\u4ed8\u9a8c\u8bc1\u5bc6\u7801\u89c4\u5219<\/h2>\n<ul>\n<li>\n<p>\u652f\u4ed8\u91d1\u989d&gt;500\u5143\u7684\u4ea4\u6613\u9700\u8981\u9a8c\u8bc1\u7528\u6237\u652f\u4ed8\u5bc6\u7801<\/p>\n<\/li>\n<li>\n<p>\u7528\u6237\u8d26\u53f7\u6bcf\u5929\u6700\u591a\u67095\u7b14\u4ea4\u6613\u53ef\u4ee5\u514d\u5bc6\uff0c\u8d85\u8fc7\u540e\u9700\u8981\u9a8c\u8bc1\u5bc6\u7801<\/p>\n<\/li>\n<li>\n<p>\u5fae\u4fe1\u652f\u4ed8\u540e\u53f0\u5224\u65ad\u7528\u6237\u652f\u4ed8\u884c\u4e3a\u6709\u5f02\u5e38\u60c5\u51b5\uff0c\u7b26\u5408\u514d\u5bc6\u89c4\u5219\u7684\u4ea4\u6613\u4e5f\u4f1a\u8981\u6c42\u9a8c\u8bc1\u5bc6\u7801<\/p>\n<\/li>\n<\/ul>\n<blockquote><p>\n  \u514d\u5bc6\u6a21\u5f0f\u548c\u9a8c\u5bc6\u6a21\u5f0f\u4e24\u8005\u7684\u533a\u522b\u4f1a\u5728\u540e\u9762\u8bb2\u5230\n<\/p><\/blockquote>\n<p>\u4e0b\u9762\u6765\u8bb2\u8bb2\u5177\u4f53\u5b9e\u73b0<\/p>\n<p>\u5237\u5361\u652f\u4ed8\u5f53\u4e2d\u4f7f\u7528\u7684\u652f\u4ed8\u63a5\u53e3\u4e3a: \u63d0\u4ea4\u5237\u5361\u652f\u4ed8 \u4f7f\u7528\u7684\u662fhttps\u8bf7\u6c42\uff1b\u4e0d\u9700\u8981\u5fae\u4fe1\u652f\u4ed8\u8bc1\u4e66\u3002<\/p>\n<p>\u4ee5\u4e0b\u662f\u5177\u4f53\u5b9e\u73b0\u4ee3\u7801\uff1a<br \/>com.javen.weixin.controller.WeixinPayController\u4e2d\u7684micropay()<\/p>\n<pre>public&nbsp;void&nbsp;micropay(){\r\n&nbsp;&nbsp;String&nbsp;url=\"https:\/\/api.mch.weixin.qq.com\/pay\/micropay\";\r\n\r\n&nbsp;&nbsp;String&nbsp;total_fee=\"1\";\r\n&nbsp;&nbsp;\/\/\u6388\u6743\u7801\r\n&nbsp;&nbsp;String&nbsp;auth_code&nbsp;=&nbsp;getPara(\"auth_code\");\r\n\r\n&nbsp;&nbsp;Map&lt;string&gt;&nbsp;params&nbsp;=&nbsp;new&nbsp;HashMap&lt;string&gt;();\r\n&nbsp;&nbsp;params.put(\"appid\",&nbsp;appid);\r\n&nbsp;&nbsp;params.put(\"mch_id\",&nbsp;partner);\r\n&nbsp;&nbsp;params.put(\"device_info\",&nbsp;\"javen205\");\/\/\u7ec8\u7aef\u8bbe\u5907\u53f7\r\n&nbsp;&nbsp;params.put(\"nonce_str\",&nbsp;System.currentTimeMillis()&nbsp;\/&nbsp;1000&nbsp;+&nbsp;\"\");\r\n&nbsp;&nbsp;params.put(\"body\",&nbsp;\"\u5237\u5361\u652f\u4ed8\u6d4b\u8bd5\");\r\n\/\/&nbsp;&nbsp;params.put(\"detail\",&nbsp;\"json\u5b57\u7b26\u4e32\");\/\/\u975e\u5fc5\u987b\r\n&nbsp;&nbsp;params.put(\"attach\",&nbsp;\"javen205\");\/\/\u9644\u52a0\u53c2\u6570\u975e\u5fc5\u987b\r\n&nbsp;&nbsp;String&nbsp;out_trade_no=System.currentTimeMillis()+\"\";\r\n&nbsp;&nbsp;params.put(\"out_trade_no\",&nbsp;out_trade_no);\r\n&nbsp;&nbsp;params.put(\"total_fee\",&nbsp;total_fee);\r\n\r\n&nbsp;&nbsp;String&nbsp;ip&nbsp;=&nbsp;IpKit.getRealIp(getRequest());\r\n&nbsp;&nbsp;if&nbsp;(StrKit.isBlank(ip))&nbsp;{\r\n&nbsp;&nbsp;&nbsp;ip&nbsp;=&nbsp;\"127.0.0.1\";\r\n&nbsp;&nbsp;}\r\n\r\n&nbsp;&nbsp;params.put(\"spbill_create_ip\",&nbsp;ip);\r\n&nbsp;&nbsp;params.put(\"auth_code\",&nbsp;auth_code);\r\n\r\n&nbsp;&nbsp;String&nbsp;sign&nbsp;=&nbsp;PaymentKit.createSign(params,&nbsp;paternerKey);\r\n&nbsp;&nbsp;params.put(\"sign\",&nbsp;sign);\r\n\r\n&nbsp;&nbsp;String&nbsp;xmlResult&nbsp;=&nbsp;HttpUtils.post(url,&nbsp;PaymentKit.toXml(params));\r\n&nbsp;&nbsp;\/\/\u540c\u6b65\u8fd4\u56de\u7ed3\u679c\r\n&nbsp;&nbsp;System.out.println(\"xmlResult:\"+xmlResult);\r\n\r\n&nbsp;&nbsp;Map&lt;string&gt;&nbsp;result&nbsp;=&nbsp;PaymentKit.xmlToMap(xmlResult);\r\n&nbsp;&nbsp;String&nbsp;return_code&nbsp;=&nbsp;result.get(\"return_code\");\r\n&nbsp;&nbsp;if&nbsp;(StrKit.isBlank(return_code)&nbsp;||&nbsp;!\"SUCCESS\".equals(return_code))&nbsp;{\r\n&nbsp;&nbsp;&nbsp;\/\/\u901a\u8baf\u5931\u8d25&nbsp;\r\n&nbsp;&nbsp;&nbsp;String&nbsp;err_code&nbsp;=&nbsp;result.get(\"err_code\");\r\n&nbsp;&nbsp;&nbsp;\/\/\u7528\u6237\u652f\u4ed8\u4e2d\uff0c\u9700\u8981\u8f93\u5165\u5bc6\u7801\r\n&nbsp;&nbsp;&nbsp;if&nbsp;(err_code.equals(\"USERPAYING\"))&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\u7b49\u5f855\u79d2\u540e\u8c03\u7528\u3010\u67e5\u8be2\u8ba2\u5355API\u3011https:\/\/pay.weixin.qq.com\/wiki\/doc\/api\/micropay.php?chapter=9_2\r\n\r\n&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;renderText(\"\u901a\u8baf\u5931\u8d25&amp;gt;&amp;gt;\"+xmlResult);\r\n&nbsp;&nbsp;&nbsp;return;\r\n&nbsp;&nbsp;}\r\n\r\n&nbsp;&nbsp;String&nbsp;result_code&nbsp;=&nbsp;result.get(\"result_code\");\r\n&nbsp;&nbsp;if&nbsp;(StrKit.isBlank(result_code)&nbsp;||&nbsp;!\"SUCCESS\".equals(result_code))&nbsp;{\r\n&nbsp;&nbsp;&nbsp;\/\/\u652f\u4ed8\u5931\u8d25\r\n&nbsp;&nbsp;&nbsp;renderText(\"\u652f\u4ed8\u5931\u8d25&amp;gt;&amp;gt;\"+xmlResult);\r\n&nbsp;&nbsp;&nbsp;return;\r\n&nbsp;&nbsp;}\r\n\r\n&nbsp;&nbsp;\/\/\u652f\u4ed8\u6210\u529f&nbsp;\r\n\r\n&nbsp;&nbsp;renderText(xmlResult);\r\n&nbsp;}&lt;\/string&gt;&lt;\/string&gt;&lt;\/string&gt;<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u5728\u5f00\u6e90\u9879\u76eeweixin-guide\u4e2d \u6d4b\u8bd5\u8bbf\u95ee\u5730\u5740\u4e3ahttp:\/\/\u57df\u540d[\/\u9879\u76ee\u540d\u79f0]\/pay\/micropay?auth_code=xxxxx \uff0c \u6388\u6743\u7801auth_code &nbsp;\u4e3a\u5fae\u4fe1\u5ba2\u6237\u7aef\u5237\u5361\u754c\u9762\u6761\u5f62\u7801\u4e0a\u663e\u793a\u7684\u6570\u5b57\u3002<\/p>\n<blockquote>\n<p>\uff08\u6ce8\uff1a\u7528\u6237\u5237\u5361\u6761\u5f62\u7801\u89c4\u5219\uff1a18\u4f4d\u7eaf\u6570\u5b57\uff0c\u4ee510\u300111\u300112\u300113\u300114\u300115\u5f00\u5934\uff09<\/p>\n<\/blockquote>\n<h3>\u6d4b\u8bd5<\/h3>\n<blockquote>\n<p>\u4e0d\u7528\u626b\u7801\u67aa\u4e5f\u53ef\u4ee5\u6d4b\u8bd5\uff0c\u53ea\u662f\u6d4b\u8bd5\u624b\u52a8\u8f93\u5165\u6388\u6743\u7801\u9ebb\u70e6\u4e00\u70b9\uff081\u5206\u949f\u5237\u65b0\u4e00\u6b21\uff09\uff0c\u9700\u8981\u4f60\u5feb\u901f\u8f93\u5165\u6388\u6743\u7801\u3002\u626b\u7801\u67aa\u53ea\u662f\u8bfb\u53d6\u6388\u6743\u7801\u5e76\u6ca1\u6709\u591a\u505a\u5176\u4ed6\u7684\u4e8b\u60c5\u3002<\/p>\n<\/blockquote>\n<p>\u6211\u672c\u5730\u505a\u7aef\u53e3\u6620\u5c04\u6d4b\u8bd5\u7684\u5730\u5740\u5982\u4e0b\uff1a<\/p>\n<p>\u5176\u4e2dauth_code \u503c\u662f\u8c01\u4fbf\u5199\u7684<br \/>http:\/\/\u57df\u540d\/pay\/micropay?auth_code=111 \u5728\u6d4f\u89c8\u5668\u4e2d\u8bbf\u95ee<\/p>\n<p>\u8fd4\u56de\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n<pre>&lt;xml&gt;&lt;return_code&gt;&lt;\/return_code&gt;&lt;return_msg&gt;&lt;\/return_msg&gt;&lt;appid&gt;&lt;\/appid&gt;&lt;mch_id&gt;&lt;\/mch_id&gt;&lt;device_info&gt;&lt;\/device_info&gt;&lt;nonce_str&gt;&lt;\/nonce_str&gt;&lt;sign&gt;&lt;\/sign&gt;&lt;result_code&gt;&lt;\/result_code&gt;&lt;err_code&gt;&lt;\/err_code&gt;&lt;err_code_des&gt;&lt;\/err_code_des&gt;&lt;\/xml&gt;<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u5237\u5361\u652f\u4ed8\u8d85\u8fc75\u6b21\u5c31\u4f1a\u63d0\u793a\u8f93\u5165\u5bc6\u7801<\/p>\n<p>\u8fd4\u56de\u7684err_code \u4e3aUSERPAYING<\/p>\n<p>\u6b64\u65f6\u652f\u4ed8\u7ed3\u679c\u5c31\u9700\u8981\u901a\u8fc7 \u67e5\u8be2\u8ba2\u5355\u63a5\u53e3\u6765\u83b7\u53d6<\/p>\n<blockquote>\n<p>\u8fd9\u5c31\u662f\u6709\u5bc6\u7801\u4e0e\u65e0\u5bc6\u7801\u7684\u533a\u522b\uff0c\u6709\u5bc6\u7801\u5fc5\u987b\u901a\u8fc7\u67e5\u8be2\u8ba2\u5355\u6765\u83b7\u53d6\u652f\u4ed8\u7ed3\u679c\uff0c\u5982\u679c\u7ed3\u679c\u4efb\u7136\u4e3aUSERPAYING,\u5219\u6bcf\u96945\u79d2\u8c03\u7528\u67e5\u8be2\u8ba2\u5355API\u5224\u65ad\u5b9e\u9645\u652f\u4ed8\u7ed3\u679c\uff0c\u5982\u679c\u7528\u6237\u53d6\u6d88\u652f\u4ed8\u6216\u7d2f\u8ba130\u79d2\u7528\u6237\u90fd\u672a\u652f\u4ed8\uff0c\u5546\u6237\u6536\u94f6\u53f0\u67e5\u8be2\u6d41\u7a0b\u540e\u7ee7\u7eed\u8c03\u7528\u64a4\u9500\u8ba2\u5355API\u64a4\u9500\u652f\u4ed8\u4ea4\u6613\u3002<\/p>\n<\/blockquote>\n<p>\u8f93\u5165\u6b63\u786e\u7684auth_code \u8fd4\u56de\u7684\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n<pre>&lt;xml&gt;&lt;return_code&gt;&lt;\/return_code&gt;&lt;return_msg&gt;&lt;\/return_msg&gt;&lt;appid&gt;&lt;\/appid&gt;&lt;mch_id&gt;&lt;\/mch_id&gt;&lt;device_info&gt;&lt;\/device_info&gt;&lt;nonce_str&gt;&lt;\/nonce_str&gt;&lt;sign&gt;&lt;\/sign&gt;&lt;result_code&gt;&lt;\/result_code&gt;&lt;openid&gt;&lt;\/openid&gt;&lt;is_subscribe&gt;&lt;\/is_subscribe&gt;&lt;trade_type&gt;&lt;\/trade_type&gt;&lt;bank_type&gt;&lt;\/bank_type&gt;&lt;total_fee&gt;1&lt;\/total_fee&gt;&lt;fee_type&gt;&lt;\/fee_type&gt;&lt;transaction_id&gt;&lt;\/transaction_id&gt;&lt;out_trade_no&gt;&lt;\/out_trade_no&gt;&lt;attach&gt;&lt;\/attach&gt;&lt;time_end&gt;&lt;\/time_end&gt;&lt;cash_fee&gt;1&lt;\/cash_fee&gt;&lt;\/xml&gt;<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u4f7f\u7528\u573a\u666f\u63cf\u8ff0<\/p>\n<blockquote>\n<p>\u5982\u679c<strong>\u63a5\u5165\u6a21\u5f0f\u4e3a\u5546\u6237\u540e\u53f0\u63a5\u5165<\/strong> \u652f\u4ed8\u6210\u529f\u4e86\u5fae\u4fe1\u652f\u4ed8\u7cfb\u7edf\u5c31\u4f1a\u5c06\u4e0a\u9762\u7684xml\u6570\u636e\u8fd4\u56de\u7ed9\u5546\u6237\uff0c\u5546\u6237\u518d\u5c06\u652f\u4ed8\u7ed3\u679c\u56de\u8c03\u7ed9\u95e8\u5e97\u6536\u94f6\u53f0\uff0c\u6536\u94f6\u53f0\u7ee7\u7eed\u5904\u7406\u4e1a\u52a1\u903b\u8f91<\/p>\n<p>\u5982\u679c<strong>\u63a5\u5165\u6a21\u5f0f-\u95e8\u5e97\u63a5\u5165<\/strong> \u652f\u4ed8\u6210\u529f\u4e86\u5fae\u4fe1\u652f\u4ed8\u7cfb\u7edf\u5c31\u4f1a\u5c06\u4e0a\u9762\u7684xml\u6570\u636e\u8fd4\u56de\u7ed9\u6536\u94f6\u53f0\uff0c\u6536\u94f6\u53f0\u7ee7\u7eed\u5904\u7406\u4e1a\u52a1\u903b\u8f91<\/p>\n<\/blockquote>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/000\/001\/506\/f3788af960ff920eef12727d23b7eb3c-0.png\" style=\"max-width:90%\" class=\"aligncenter\" title=\"\u5206\u4eab\u5fae\u4fe1\u516c\u4f17\u53f7\u5f00\u53d1\u5237\u5361\u652f\u4ed8\u7684\u5b9e\u4f8b\u6559\u7a0b\u63d2\u56fe\" alt=\"\u5206\u4eab\u5fae\u4fe1\u516c\u4f17\u53f7\u5f00\u53d1\u5237\u5361\u652f\u4ed8\u7684\u5b9e\u4f8b\u6559\u7a0b\u63d2\u56fe\" \/><\/p>\n<p>\u5237\u5361\u652f\u4ed8.png<\/p>\n<p>\u7801\u5b57\u5b8c\u6bd5\uff0c\u4ee5\u4e0a\u5c31\u662f\u5fae\u4fe1\u5237\u5361\u652f\u4ed8\u7684\u8be6\u7ec6\u4ecb\u7ecd\u3002<\/p>\n<p>\u3010\u76f8\u5173\u63a8\u8350\u3011<\/p>\n<p>1. <\/p>\n<p>2.&nbsp;<\/p>\n<p>3. <\/p>\n<p>\u4ee5\u4e0a\u5c31\u662f\u5206\u4eab\u5fae\u4fe1\u516c\u4f17\u53f7\u5f00\u53d1\u5237\u5361\u652f\u4ed8\u7684\u5b9e\u4f8b\u6559\u7a0b\u7684\u8be6\u7ec6\u5185\u5bb9\uff0c\u66f4\u591a\u8bf7\u5173\u6ce8\u7c73\u4e91\u5176\u5b83\u76f8\u5173\u6587\u7ae0\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6b22\u8fce\u7559\u8a00\u3001\u8f6c\u53d1 \u6b64\u7bc7\u6587\u7ae0\u5177\u4f53\u6765\u804a\u804a\u5fae\u4fe1\u5237\u5361\u652f\u4ed8 \u573a\u666f\u4ecb\u7ecd \u6b65\u9aa41\uff1a\u7528\u6237\u9009\u62e9\u5237\u5361\u652f\u4ed8\u4ed8\u6b3e\u5e76\u6253\u5f00\u5fae\u4fe1\uff0c\u8fdb\u5165\u201c\u6211\u201d-&gt;\u201c\u94b1\u5305\u201d-&gt;\u201c\u5237\u5361\u201d\u6761\u7801\u754c\u9762 \u6b65\u9aa42\uff1a\u6536\u94f6\u5458\u5728\u5546\u6237\u7cfb\u7edf\u64cd\u4f5c\u751f\u6210\u652f\u4ed8\u8ba2\u5355\uff0c\u7528\u6237\u786e\u8ba4\u652f\u4ed8\u91d1\u989d \u6b65\u9aa43\uff1a\u5546\u6237\u6536\u94f6\u5458\u7528\u626b\u7801\u8bbe\u5907\u626b\u63cf\u7528\u6237\u7684\u6761\u7801\/\u4e8c\u7ef4\u7801\uff0c\u5546\u6237\u6536\u94f6\u7cfb\u7edf\u63d0\u4ea4\u652f\u4ed8 \u6b65\u9aa44\uff1a\u5fae\u4fe1\u652f\u4ed8\u540e\u53f0\u7cfb\u7edf\u6536\u5230\u652f\u4ed8\u8bf7\u6c42\uff0c\u6839\u636e\u9a8c\u8bc1\u5bc6\u7801\u89c4\u5219\u5224\u65ad\u662f\u5426\u9a8c\u8bc1\u7528\u6237\u7684\u652f\u4ed8\u5bc6\u7801\uff0c\u4e0d\u9700\u8981\u9a8c\u8bc1\u5bc6\u7801\u7684\u4ea4\u6613\u76f4\u63a5\u53d1\u8d77\u6263\u6b3e\uff0c\u9700\u8981\u9a8c\u8bc1\u5bc6\u7801\u7684\u4ea4\u6613\u4f1a\u5f39\u51fa\u5bc6\u7801\u8f93\u5165\u6846\u3002\u652f\u4ed8\u6210\u529f\u540e\u5fae\u4fe1\u7aef\u4f1a\u5f39\u51fa\u6210\u529f\u9875\u9762\uff0c\u652f\u4ed8\u5931\u8d25\u4f1a\u5f39\u51fa\u9519\u8bef\u63d0\u793a \u5546\u6237\u4fa7\u6d41\u7a0b \u8be6\u7ec6\u6587\u6863\u4ecb\u7ecd\u53ea\u9700\u8981\u7b80\u5355\u4e86\u89e3\u6d41\u7a0b \u70b9\u51fb\u8fd9\u91cc \u5237\u5361\u652f\u4ed8\u63a5\u5165\u6a21\u5f0f\u53ef\u5206\u4e3a\uff1a\u5546\u6237\u540e\u53f0\u63a5\u5165(\u63d0\u4f9b\u7ed9\u522b\u4eba\u4f7f\u7528\u7c7b\u4f3c\u7b2c\u4e09\u65b9)\u548c\u95e8\u5e97\u63a5\u5165(\u81ea\u5df1\u4f7f\u7528)\uff1b\u533a\u522b\u5c31\u662f\u652f\u4ed8\u7ed3\u679c\u591a\u5206\u53d1\u4e00\u6b21\u3002 \u6839\u636e\u7528\u6237\u662f\u5426\u9700\u8981\u8f93\u5165\u652f\u4ed8\u5bc6\u7801\u53ef\u5206\u4e3a\uff1a\u514d\u5bc6\u6a21\u5f0f\u548c\u9a8c\u5bc6\u6a21\u5f0f\u3002 \u652f\u4ed8\u9a8c\u8bc1\u5bc6\u7801\u89c4\u5219 \u652f\u4ed8\u91d1\u989d&gt;500\u5143\u7684\u4ea4\u6613\u9700\u8981\u9a8c\u8bc1\u7528\u6237\u652f\u4ed8\u5bc6\u7801 \u7528\u6237\u8d26\u53f7\u6bcf\u5929\u6700\u591a\u67095\u7b14\u4ea4\u6613\u53ef\u4ee5\u514d\u5bc6\uff0c\u8d85\u8fc7\u540e\u9700\u8981\u9a8c\u8bc1\u5bc6\u7801 \u5fae\u4fe1\u652f\u4ed8\u540e\u53f0\u5224\u65ad\u7528\u6237\u652f\u4ed8\u884c\u4e3a\u6709\u5f02\u5e38\u60c5\u51b5\uff0c\u7b26\u5408\u514d\u5bc6\u89c4\u5219\u7684\u4ea4\u6613\u4e5f\u4f1a\u8981\u6c42\u9a8c\u8bc1\u5bc6\u7801 \u514d\u5bc6\u6a21\u5f0f\u548c\u9a8c\u5bc6\u6a21\u5f0f\u4e24\u8005\u7684\u533a\u522b\u4f1a\u5728\u540e\u9762\u8bb2\u5230 \u4e0b\u9762\u6765\u8bb2\u8bb2\u5177\u4f53\u5b9e\u73b0 \u5237\u5361\u652f\u4ed8\u5f53\u4e2d\u4f7f\u7528\u7684\u652f\u4ed8\u63a5\u53e3\u4e3a: \u63d0\u4ea4\u5237\u5361\u652f\u4ed8 \u4f7f\u7528\u7684\u662fhttps\u8bf7\u6c42\uff1b\u4e0d\u9700\u8981\u5fae\u4fe1\u652f\u4ed8\u8bc1\u4e66\u3002 \u4ee5\u4e0b\u662f\u5177\u4f53\u5b9e\u73b0\u4ee3\u7801\uff1acom.javen.weixin.controller.WeixinPayController\u4e2d\u7684micropay() public&nbsp;void&nbsp;micropay(){ &nbsp;&nbsp;String&nbsp;url=&#8221;https:\/\/api.mch.weixin.qq.com\/pay\/micropay&#8221;; &nbsp;&nbsp;String&nbsp;total_fee=&#8221;1&#8243;; &nbsp;&nbsp;\/\/\u6388\u6743\u7801 &nbsp;&nbsp;String&nbsp;auth_code&nbsp;=&nbsp;getPara(&#8220;auth_code&#8221;); &nbsp;&nbsp;Map&lt;string&gt;&nbsp;params&nbsp;=&nbsp;new&nbsp;HashMap&lt;string&gt;(); &nbsp;&nbsp;params.put(&#8220;appid&#8221;,&nbsp;appid); &nbsp;&nbsp;params.put(&#8220;mch_id&#8221;,&nbsp;partner); &nbsp;&nbsp;params.put(&#8220;device_info&#8221;,&nbsp;&#8220;javen205&#8221;);\/\/\u7ec8\u7aef\u8bbe\u5907\u53f7 &nbsp;&nbsp;params.put(&#8220;nonce_str&#8221;,&nbsp;System.currentTimeMillis()&nbsp;\/&nbsp;1000&nbsp;+&nbsp;&#8220;&#8221;); &nbsp;&nbsp;params.put(&#8220;body&#8221;,&nbsp;&#8220;\u5237\u5361\u652f\u4ed8\u6d4b\u8bd5&#8221;); \/\/&nbsp;&nbsp;params.put(&#8220;detail&#8221;,&nbsp;&#8220;json\u5b57\u7b26\u4e32&#8221;);\/\/\u975e\u5fc5\u987b &nbsp;&nbsp;params.put(&#8220;attach&#8221;,&nbsp;&#8220;javen205&#8243;);\/\/\u9644\u52a0\u53c2\u6570\u975e\u5fc5\u987b &nbsp;&nbsp;String&nbsp;out_trade_no=System.currentTimeMillis()+&#8221;&#8221;; &nbsp;&nbsp;params.put(&#8220;out_trade_no&#8221;,&nbsp;out_trade_no); &nbsp;&nbsp;params.put(&#8220;total_fee&#8221;,&nbsp;total_fee); &nbsp;&nbsp;String&nbsp;ip&nbsp;=&nbsp;IpKit.getRealIp(getRequest()); &nbsp;&nbsp;if&nbsp;(StrKit.isBlank(ip))&nbsp;{ &nbsp;&nbsp;&nbsp;ip&nbsp;=&nbsp;&#8220;127.0.0.1&#8221;; &nbsp;&nbsp;} &nbsp;&nbsp;params.put(&#8220;spbill_create_ip&#8221;,&nbsp;ip); &nbsp;&nbsp;params.put(&#8220;auth_code&#8221;,&nbsp;auth_code); &nbsp;&nbsp;String&nbsp;sign&nbsp;=&nbsp;PaymentKit.createSign(params,&nbsp;paternerKey); &nbsp;&nbsp;params.put(&#8220;sign&#8221;,&nbsp;sign); &nbsp;&nbsp;String&nbsp;xmlResult&nbsp;=&nbsp;HttpUtils.post(url,&nbsp;PaymentKit.toXml(params)); &nbsp;&nbsp;\/\/\u540c\u6b65\u8fd4\u56de\u7ed3\u679c &nbsp;&nbsp;System.out.println(&#8220;xmlResult:&#8221;+xmlResult); &nbsp;&nbsp;Map&lt;string&gt;&nbsp;result&nbsp;=&nbsp;PaymentKit.xmlToMap(xmlResult); &nbsp;&nbsp;String&nbsp;return_code&nbsp;=&nbsp;result.get(&#8220;return_code&#8221;); &nbsp;&nbsp;if&nbsp;(StrKit.isBlank(return_code)&nbsp;||&nbsp;!&#8221;SUCCESS&#8221;.equals(return_code))&nbsp;{ &nbsp;&nbsp;&nbsp;\/\/\u901a\u8baf\u5931\u8d25&nbsp; &nbsp;&nbsp;&nbsp;String&nbsp;err_code&nbsp;=&nbsp;result.get(&#8220;err_code&#8221;); &nbsp;&nbsp;&nbsp;\/\/\u7528\u6237\u652f\u4ed8\u4e2d\uff0c\u9700\u8981\u8f93\u5165\u5bc6\u7801 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19],"tags":[],"class_list":["post-30245","post","type-post","status-publish","format-standard","hentry","category-19"],"_links":{"self":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/30245","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/comments?post=30245"}],"version-history":[{"count":0,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/30245\/revisions"}],"wp:attachment":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/media?parent=30245"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/categories?post=30245"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/tags?post=30245"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}