您的位置:

Wechat Web开发全掌握

WeChat Web是一种即时通讯工具,是公众号、小程序的开发工具之一。Wechat Web提供了一种方便的方式与客户和用户交互,便于快速进行客户服务、推广和用户交流。本文将围绕Wechat Web展开介绍,深入阐述其在开发中的应用和实现。

一、微信网页授权

Wechat Web提供了一种免登陆的方式,即通过微信网页授权来实现用户授权登陆,便于用户快速进入网站。具体实现步骤如下:

<a href="https://open.weixin.qq.com/connect/oauth2/authorize?appid=[appid]&redirect_uri=[redirect_uri]&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect">微信登录</a>

其中,appid是微信公众平台的ID,redirect_uri是授权后重定向的链接地址。请求Api获取code,以此来获取用户的openid和access_token,实现用户授权登陆。

二、微信JS-SDK

微信JS-SDK是WeChat Web开发中的重要组件之一,提供了一些JS API,通过这些API可以在WeChat中获取一些重要的信息,如地理位置、扫码等。既便于开发者在WeChat中进行交互,也让用户更好的体验。

既然是JS-SDK,那么首先要引用SDK,在HTML中添加一段JavaScript代码:

<script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>

引入JS-SDK后便可以使用其中的API,例如获取当前地理位置的API:

// 如果已经授权,可以直接获取位置信息
wx.getLocation({
    success: function (res) {
        var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
        var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。
        var speed = res.speed; // 速度,以米/每秒计
        var accuracy = res.accuracy; // 位置精度
    }
});

// 如果未授权,需获取用户授权
wx.openLocation({
    latitude: 23.099994,
    longitude: 113.324520,
    name: 'TIT 创意园',
    address: '广州市海珠区新港中路 397 号',
    scale: 14
});

三、WeChat网页支付

WeChat网页支付是WeChat Web的重要组成部分,方便用户在微信内完成支付流程。开发中需要接入Wechat支付API以完成交易流程,具体实现步骤如下:

1、网站接入微信支付,获取商户号和API密钥

2、用户下单后,获取下单信息及签名等加密数据

3、网站后端通过API提交支付请求并完成支付签名

4、获取支付结果并完成对应操作

在WeChat Web中,通过WeChat支付API获取相关信息及签名,完成支付流程。示例代码如下:

// 微信JS API 支付
function onBridgeReady() {
    WeixinJSBridge.invoke('getBrandWCPayRequest', {
        "appId": "{value1}",     // 公众号名称,由商户传入    
        "timeStamp": "{value2}", // 时间戳,自1970年以来的秒数     
        "nonceStr": "{value3}",  // 随机串     
        "package": "{value4}",   // 订单详情扩展字符串,由商家传入     
        "signType": "MD5",       // 微信签名方式:     
        "paySign": "{value5}"    // 微信签名 
    }, function(res) {
        if (res.err_msg == "get_brand_wcpay_request:ok") {
            // 结果成功处理
        } else {
            // 结果失败处理
        }
    });
}

if (typeof WeixinJSBridge == "undefined") {
    if(document.addEventListener ){
        document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
    }else if (document.attachEvent){
        document.attachEvent('WeixinJSBridgeReady', onBridgeReady); 
        document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
    }
}else{
    onBridgeReady();
}

四、开发环境搭建

为开发WeChat Web,需要对开发环境进行搭建。开发环境主要由以下几部分组成:

1、开发者账号及公众号注册

2、微信开发者工具

3、API文档及开发示例

开发者账号及公众号注册是申请开发WeChat Web的第一步。在成功注册后,需要下载微信开发者工具并完成配置。同时,阅读API文档及开发示例,熟悉一些基础概念和开发方法。

代码示例:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>微信JS-SDK之获取地理位置</title>
        <script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
        <script>
            wx.config({
                debug: false,
                appId: '',
                timestamp: '',
                nonceStr: '',
                signature: '',
                jsApiList: [
                    'getLocation',
                    'openLocation'
                ]
            });

            wx.ready(function () {
                wx.getLocation({
                    success: function (res) {
                        var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
                        var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。
                        var speed = res.speed; // 速度,以米/每秒计
                        var accuracy = res.accuracy; // 位置精度
                        document.getElementById('latitude').innerHTML = latitude;
                        document.getElementById('longitude').innerHTML = longitude;
                        document.getElementById('speed').innerHTML = speed;
                        document.getElementById('accuracy').innerHTML = accuracy;
                    }
                });
            });
        </script>
    </head>
    <body>
        <p>纬度:<span id="latitude"></span></p>
        <p>经度:<span id="longitude"></span></p>
        <p>速度:<span id="speed"></span></p>
        <p>精度:<span id="accuracy"></span></p>
    </body>
</html>

以上即为WeChat Web开发全掌握,包括了微信网页授权、微信JS-SDK、WeChat网页支付和开发环境搭建等内容。希望这篇文章能够对WeChat Web开发初学者有所帮助。

Wechat Web开发全掌握

2023-05-18
java客户端学习笔记(java开发笔记)

2022-11-14
python课堂整理32(python笔记全)

2022-11-12
java学习笔记(java初学笔记)

2022-11-14
重学java笔记,java笔记总结

2022-11-23
java包笔记,Java语言包

2022-11-18
关于已前的学习笔记java的信息

2022-11-18
达内web前端js笔记(达内jsd)

本文目录一览: 1、web前端里的js技术 2、《web前端笔记7》js字符—获取、查找、遍历、提取、替换方法总结 3、达内web前端开发讲的什么内容 4、2020年自学Web前端要掌握的知识点有哪些

2023-12-08
java方法整理笔记(java总结)

2022-11-08
java笔记,尚硅谷java笔记

2022-12-01
java基础知识学习笔记一,Java基础笔记

2022-11-21
python学习日记day4(大学python笔记整理)

2022-11-13
python基础学习整理笔记,Python课堂笔记

2022-11-21
印象笔记记录java学习(Java成长笔记)

2022-11-12
jsp程序开发学习笔记2,jsp程序设计题库

本文目录一览: 1、《JSP&Servlet学习笔记》pdf下载在线阅读,求百度网盘云资源 2、林信良编著jsp&servlet学习笔记第2版课后答案吗 3、jsp有没有快速掌握的办法呀? 4、要学J

2023-12-08
发篇java复习笔记(java课程笔记)

2022-11-09
python开发学习day11(Python笔记)

2022-11-08
每日java学习笔记(java高手笔记)

2022-11-15
关于python学习第四次笔记的信息

2022-11-08
java笔记,大学java笔记

2022-11-28