?
一個(gè)小程序最多5個(gè)服務(wù)類(lèi)目,一個(gè)月可以修改3次類(lèi)目
小程序侵權(quán)投訴的發(fā)起與應(yīng)對(duì)
軟件著作權(quán)作品登記證書(shū)
實(shí)現(xiàn)小程序支付功能
如何借助官方支付api簡(jiǎn)單、高效率地實(shí)現(xiàn)小程序支付功能
借助小程序云開(kāi)發(fā)實(shí)現(xiàn)
只需要一個(gè)簡(jiǎn)單的云函數(shù)
實(shí)現(xiàn)微信小程序支付功能
exports.main = async(event, context) => {
const wxContent = cloud.getWXContext()
let {
orderid,
money
} = event;
// 初始化支付
const api = tenpay.init(config);
let result = await api.getPayParams({
out_trade_no: orderid,
body: '商品簡(jiǎn)單描述',
total_fee: money, // 訂單金額
openid: wxContext.OPENID // 付款用戶的openid
});
return result;
}
小程序界面設(shè)計(jì)、交互、功能與他人的手機(jī)應(yīng)用軟件或在先發(fā)布的小程序構(gòu)成實(shí)質(zhì)性相似,構(gòu)成小程序抄襲
微信小程序代碼抄襲,侵犯他人軟件著作權(quán)
<image mode="widthFix" src="../../img/next-course.png"></image>
image {
width: 100%;
}
<view class="card">
<image src="" mode="widthFix"></image>
</view>
.card image {
}
.card {
margin: 10rpx;
}
.bg {
width: 100%;
}
什么是UniApp
Union Application
前端框架
基于Vue.js
開(kāi)發(fā)規(guī)范同小程序
<style>
@import url("index.css");
</style>
widthFix
寬度不變,高度自動(dòng)變化,保存原圖寬高比不變
一個(gè)云開(kāi)發(fā)小程序
// app.js
App({
onLaunch: function() {
wx.cloud.init({
env: "prod-ayrkn"
})
}
})
創(chuàng)建云函數(shù)pay
引入三方依賴tenpay
在命令行里執(zhí)行 npm i tenpay
image.png
image.png
image.png
//云開(kāi)發(fā)實(shí)現(xiàn)支付
const cloud = require('wx-server-sdk')
cloud.init()
//1,引入支付的三方依賴
const tenpay = require('tenpay');
//2,配置支付信息
const config = {
appid: '你的小程序appid',
mchid: '你的微信商戶號(hào)',
partnerKey: '微信支付安全密鑰',
notify_url: '支付回調(diào)網(wǎng)址,這里可以先隨意填一個(gè)網(wǎng)址',
spbill_create_ip: '127.0.0.1' //這里填這個(gè)就可以
};
exports.main = async(event, context) => {
const wxContext = cloud.getWXContext()
let {
orderid,
money
} = event;
//3,初始化支付
const api = tenpay.init(config);
let result = await api.getPayParams({
out_trade_no: orderid,
body: '商品簡(jiǎn)單描述',
total_fee: money, //訂單金額(分),
openid: wxContext.OPENID //付款用戶的openid
});
return result;
}
image.png
提交頁(yè)面,調(diào)用pay云函數(shù)
<form bindsubmit="formSubmit" bindreset="formReset">
<input name="orderid" placeholder="隨便寫(xiě)一個(gè)訂單號(hào)"/>
<input name="money" placeholder="隨便寫(xiě)一個(gè)訂購(gòu)單總價(jià)"/>
<button form-type="submit" type="primary">提交訂單</button>
</form>
訂單號(hào)要大于6位
wx.requestPayment(Object object)
發(fā)起微信支付
image.png
調(diào)用wx.requestPayment實(shí)現(xiàn)支付
wx.requestPayment({
timeStamp: '',
nonceStr: '',
package: '',
signType: 'MD5',
paySign: '',
success(res){},
fail(res){}
})
pay.js
// pages/pay/pay.js
Page({
//提交訂單
formSubmit: function(e) {
let that = this;
let formData = e.detail.value
console.log('form發(fā)生了submit事件,攜帶數(shù)據(jù)為:', formData)
wx.cloud.callFunction({
name: "pay",
data: {
orderid: "" + formData.orderid,
money: formData.money
},
success(res) {
console.log("提交成功", res.result)
that.pay(res.result)
},
fail(res) {
console.log("提交失敗", res)
}
})
},
//實(shí)現(xiàn)小程序支付
pay(payData) {
//官方標(biāo)準(zhǔn)的支付方法
wx.requestPayment({
timeStamp: payData.timeStamp,
nonceStr: payData.nonceStr,
package: payData.package, //統(tǒng)一下單接口返回的 prepay_id 格式如:prepay_id=***
signType: 'MD5',
paySign: payData.paySign, //簽名
success(res) {
console.log("支付成功", res)
},
fail(res) {
console.log("支付失敗", res)
},
complete(res) {
console.log("支付完成", res)
}
})
}
})
image.png
image.png
image.png
若本號(hào)內(nèi)容有做得不到位的地方(比如:涉及版權(quán)或其他問(wèn)題),請(qǐng)及時(shí)聯(lián)系我們進(jìn)行整改即可,會(huì)在第一時(shí)間進(jìn)行處理。
?
?
本文摘自 :https://blog.51cto.com/u