微信小程序知识云开发
一个小程序最多5个服务类目,一个月可以修改3次类目
小程序侵权投诉的发起与应对
软件著作权作品登记证书
实现小程序支付功能
如何借助官方支付api简单、高效率地实现小程序支付功能
借助小程序云开发实现
只需要一个简单的云函数
实现微信小程序支付功能
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: '商品简单描述',
total_fee: money, // 订单金额
openid: wxContext.OPENID // 付款用户的openid
});
return result;
}
小程序界面设计、交互、功能与他人的手机应用软件或在先发布的小程序构成实质性相似,构成小程序抄袭
微信小程序代码抄袭,侵犯他人软件著作权
<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
开发规范同小程序
<style>
@import url("index.css");
</style>
widthFix
宽度不变,高度自动变化,保存原图宽高比不变
一个云开发小程序
// app.js
App({
onLaunch: function() {
wx.cloud.init({
env: "prod-ayrkn"
})
}
})
创建云函数pay
引入三方依赖tenpay
在命令行里执行 npm i tenpay
[外链图片转存失败(img-Ag8oCRF9-1565915745539)(https://upload-images.jianshu.io/upload_images/11158618-4cd8f7865c386211.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
[外链图片转存失败(img-oVV41MNS-1565915745543)(https://upload-images.jianshu.io/upload_images/11158618-ac663878f28c218b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
[外链图片转存失败(img-d6mAyp0R-1565915745544)(https://upload-images.jianshu.io/upload_images/11158618-b1a8579796ebb099.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
//云开发实现支付
const cloud = require('wx-server-sdk')
cloud.init()
//1,引入支付的三方依赖
const tenpay = require('tenpay');
//2,配置支付信息
const config = {
appid: '你的小程序appid',
mchid: '你的微信商户号',
partnerKey: '微信支付安全密钥',
notify_url: '支付回调网址,这里可以先随意填一个网址',
spbill_create_ip: '127.0.0.1' //这里填这个就可以
};
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: '商品简单描述',
total_fee: money, //订单金额(分),
openid: wxContext.OPENID //付款用户的openid
});
return result;
}
[外链图片转存失败(img-2ZPAhgPT-1565915745547)(https://upload-images.jianshu.io/upload_images/11158618-30dac116851543dd.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
提交页面,调用pay云函数
<form bindsubmit="formSubmit" bindreset="formReset">
<input name="orderid" placeholder="随便写一个订单号"/>
<input name="money" placeholder="随便写一个订购单总价"/>
<button form-type="submit" type="primary">提交订单</button>
</form>
订单号要大于6位
wx.requestPayment(Object object)
发起微信支付
[外链图片转存失败(img-tlXXELCg-1565915745554)(https://upload-images.jianshu.io/upload_images/11158618-fb56af8490ecee9e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
调用wx.requestPayment实现支付
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发生了submit事件,携带数据为:', 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)
}
})
},
//实现小程序支付
pay(payData) {
//官方标准的支付方法
wx.requestPayment({
timeStamp: payData.timeStamp,
nonceStr: payData.nonceStr,
package: payData.package, //统一下单接口返回的 prepay_id 格式如:prepay_id=***
signType: 'MD5',
paySign: payData.paySign, //签名
success(res) {
console.log("支付成功", res)
},
fail(res) {
console.log("支付失败", res)
},
complete(res) {
console.log("支付完成", res)
}
})
}
})
[外链图片转存失败(img-gE4DbneD-1565915745555)(https://upload-images.jianshu.io/upload_images/11158618-df345792390c4d22.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
[外链图片转存失败(img-TytLDHMo-1565915745557)(https://upload-images.jianshu.io/upload_images/11158618-55501c01b2975818.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
[外链图片转存失败(img-GRThAPsZ-1565915745562)(https://upload-images.jianshu.io/upload_images/11158618-a28a9b0bda6c5b7e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理。
请点赞!因为你们的赞同/鼓励是我写作的最大动力!
欢迎关注达叔小生的简书!
这是一个有质量,有态度的博客
[外链图片转存失败(img-MuN0jPRW-1565915745564)(https://upload-images.jianshu.io/upload_images/11158618-9ab0d3fef85d80ce?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
微信小程序知识云开发的更多相关文章
- 微信小程序--使用云开发完成支付闭环
微信小程序--使用云开发完成支付闭环 1.流程介绍 2. 代码实现和逻辑思想描述 云函数统一下单 对应云函数 unipay [CloudPay.unifiedOrder] 函数思路 : 调用云函数封装 ...
- Slog71_选取、上传和显示本地图片GET !(微信小程序之云开发-全栈时代3)
ArthurSlog SLog-71 Year·1 Guangzhou·China Sep 12th 2018 ArthurSlog Page GitHub NPM Package Page 掘金主页 ...
- 微信小程序之云开发一
最近听说微信小程序发布了云开发,可以不需要购买服务器,就能开发小程序和发布小程序,对于动辄千元的服务器,极大的节约了开发成本,受不住诱惑,我就开始了小程序的云开发,目前项目已上线,亲测不收费,闲不住的 ...
- 微信小程序与云开发
微信小程序基础概念 小程序云开发的三大基础能力:云数据库.云函数.云存储 Java.NodeJS.JavaScript.HTML5.CSS3.VueJs.ReactJs.前端工程化.前端架构 小程序开 ...
- 当微信小程序遇到云开发,再加上一个类似 ColorUI 的模板,人人都能做小程序了
作为一个 Java 程序员,早就想尝试一把微信小程序,但是一直苦于没有想法,再加上做一个漂亮的页面实在不太擅长. 由于自己比较喜欢历史,经常看历史方面的书.在一次梳理中国现有的朝代时,突然想到,要是可 ...
- 微信小程序知识总结及案例集锦
微信小程序知识总结及案例集锦 微信小程序的发展会和微信公众号一样,在某个时间点爆发 学习路径 微信小程序最好的教程肯定是官方的文档啦,点击这里直达 微信官方文档 认真跟着文档看一遍,相信有vue前端经 ...
- 微信小程序的功能开发工具跟公众号的差别,小程序是一种减负思维对简单APP是巨大打击
微信小程序的功能开发工具跟公众号的差别,小程序是一种减负思维对简单APP是巨大打击 摘要: 小程序和公众号最大的区别有如下四点:1.小程序没有粉丝,开发者在后台能看到的只能是累计用户访问数以及实时统计 ...
- 微信小程序之蓝牙开发(详细读数据、写数据、附源码)
本文将详细介绍微信小程序的蓝牙开发流程(附源码)准备:微信只支持低功耗蓝牙也就是蓝牙4.0,普通的蓝牙模块是用不了的,一定要注意. 蓝牙可以连TTL接到电脑上,再用XCOM调试 一开始定义的变量 va ...
- 基于微信小程序的系统开发准备工作
腾讯推出微信小程序也有一段时间了,在各种行业里面也都掀起一阵阵的热潮,很多APP应用被简化为小程序的功能迅速推出,同时也根据小程序的特性推出各种独具匠心的应用,相对传统的APP来说,微信小程序确实能够 ...
随机推荐
- websocket-shap 函数Broadcast的使用方法
Broadcast:在websocket-shap函数的定义是:向WebSocket服务中的每个客户端发送数据,类似于广播的效果 如果要使用异步发送,可使用BroadcastAsync函数. 在源码中 ...
- python入门基础思维导图
- 仿百度图片首页--HTML+CSS练手项目1【Table】
[本文为原创,转载请注明出处] 技术[CSS+HTML] 布局[Table] 图片准备[百度图标.10张不同类型图] --------------------------------------- ...
- Python特色的序列解包、链式赋值、链式比较
一.序列解包 序列解包(或可迭代对象解包):解包就是从序列中取出其中的元素的过程,将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中. 一般情况下要解包的序列包含的元素个数必须与你在等 ...
- Linux内核学习散知识整理
1.container_of(ptr, type, member) 使用方法:根据指向结构体type的成员member的指针ptr,获取指向改结构体的指针 /** * container_of - c ...
- day 21 作业
定义MySQL类 对象有id.host.port三个属性 定义工具create_id,在实例化时为每个对象随机生成id,保证id唯一 提供两种实例化方式,方式一:用户传入host和port 方式二:从 ...
- 复盘一篇浅谈KNN的文章
认识-什么是KNN KNN 即 K-nearest neighbors, 是一个hello world级别, 但被广泛使用的机器学习算法, 中文叫K近邻算法, 是一种基本的分类和回归方法. KNN既可 ...
- python(练习题)
1.请写出冒泡排序将list1进行排序? List1 = [1,2,34,12,33,25,12,33,90,28] 2.使用python语言打印出name=”I love python”的长度 3. ...
- 数据分析之sklearn
一,介绍 Python 中的机器学习库 简单高效的数据挖掘和数据分析工具 可供大家使用,可在各种环境中重复使用 建立在 NumPy,SciPy 和 matplotlib 上 开放源码,可商业使用 - ...
- 利用ansible书写playbook搭建HAProxy+Keepalived+PXC负载均衡和高可用的PXC环境续
ansible.playbook.haproxy.keepalived.PXC haproxy+keepalived双主模式调度pxc集群 HAProxy介绍 反向代理服务器,支持双机热备支持虚拟主机 ...