当前位置 微信开发_微信小程序中使用微信开发文档中的直接获取当前位置名称 - CSDN
  • 在本篇博客之前,博主已经写了4篇关于微信相关文章,其中三篇是本文基础:1、微信开发之入门教程,该文章详细讲解了企业号体验号免费申请与一些必要的配置,以及如何调用微信接口。2、微信开发之通过代理调试本地...

    在本篇博客之前,博主已经写了4篇关于微信相关文章,其中三篇是本文基础:

    1、微信开发之入门教程,该文章详细讲解了企业号体验号免费申请与一些必要的配置,以及如何调用微信接口。

    2、微信开发之通过代理调试本地项目,该文章详细讲解了如何调试本地项目,使用工具的详细安装与配置。

    3、微信开发之使用java获取签名signature(贴源码,附工程),该文详细讲些了如何获取签名,代码十分详细。

    对于初学者,可能还不知道订阅号、服务号、和企业号的区别,博主之前也是一直没有弄清楚,因此查阅资料整理了一篇博客供大家阅读:微信服务号、订阅号和企业号的区别(运营和开发两个角度)。建议有时间得猿友还是阅读一下为好。

    上面的文章内容虽然有点多而且繁琐,看完之后不敢说已经入门,但是初步了解,自己写实例是没有问题的。不积跬步无以至千里,希望猿友们耐心继续下去!!!!!!

    上面的文章内容虽然有点多而且繁琐,看完之后不敢说已经入门,但是初步了解,自己写实例是没有问题的。不积跬步无以至千里,希望猿友们耐心继续下去!!!!!!

    上面的文章内容虽然有点多而且繁琐,看完之后不敢说已经入门,但是初步了解,自己写实例是没有问题的。不积跬步无以至千里,希望猿友们耐心继续下去!!!!!!

    期间可能会遇到一些坑,欢迎与博主评论交流

    有了上面的基础,接下来博主将分享一个具体的微信开发实例,获取用户当前的地理位置。

    一、结果演示

    这里写图片描述这里写图片描述
    这里写图片描述这里写图片描述

    二、代码及代码讲解

    本工程使用的环境是eclipse + maven + springmvc,下面附上关键代码,springmvc和web.xml相关配置和maven相关依赖就不一一列举,最后会附上工程供大家下载。

    2.1、获取签名工具类(httpclient和sha1加密)

    package com.luo.util;
    
    import java.io.IOException;
    import java.io.UnsupportedEncodingException;
    import java.security.MessageDigest;
    import java.security.NoSuchAlgorithmException;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.List;
    import java.util.Map;
    import java.util.Set;
    import java.util.UUID;
    import net.sf.json.JSONObject;
    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.NameValuePair;
    import org.apache.http.ParseException;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.client.methods.HttpUriRequest;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.message.BasicNameValuePair;
    import org.apache.http.protocol.HTTP;
    import org.apache.http.util.EntityUtils;
    
    public class HttpXmlClient {
    
        public static String post(String url, Map<String, String> params) {
            DefaultHttpClient httpclient = new DefaultHttpClient();
            String body = null;
            HttpPost post = postForm(url, params);
            body = invoke(httpclient, post);
            httpclient.getConnectionManager().shutdown();
            return body;
        }
    
        public static String get(String url) {
            DefaultHttpClient httpclient = new DefaultHttpClient();
            String body = null;
            HttpGet get = new HttpGet(url);
            body = invoke(httpclient, get);
            httpclient.getConnectionManager().shutdown();
            return body;
        }
    
        private static String invoke(DefaultHttpClient httpclient,
                HttpUriRequest httpost) {
            HttpResponse response = sendRequest(httpclient, httpost);
            String body = paseResponse(response);
            return body;
        }
    
        private static String paseResponse(HttpResponse response) {
            HttpEntity entity = response.getEntity();
            String charset = EntityUtils.getContentCharSet(entity);
            String body = null;
            try {
                body = EntityUtils.toString(entity);
            } catch (ParseException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return body;
        }
    
        private static HttpResponse sendRequest(DefaultHttpClient httpclient,
                HttpUriRequest httpost) {
            HttpResponse response = null;
            try {
                response = httpclient.execute(httpost);
            } catch (ClientProtocolException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return response;
        }
    
        private static HttpPost postForm(String url, Map<String, String> params) {
    
            HttpPost httpost = new HttpPost(url);
            List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    
            Set<String> keySet = params.keySet();
            for (String key : keySet) {
                nvps.add(new BasicNameValuePair(key, params.get(key)));
            }
    
            try {
                httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
    
            return httpost;
        }
    
        public static void main(String[] args) {
    
            //获取access_token
            Map<String, String> params = new HashMap<String, String>();
            params.put("corpid","wx5f24fa0db1819ea2");
            params.put("corpsecret","uQtWzF0bQtl2KRHX0amekjpq8L0aO96LSpSNfctOBLRbuYPO4DUBhMn0_v2jHS-9");
            String xml = HttpXmlClient.post("https://qyapi.weixin.qq.com/cgi-bin/gettoken",params);
            JSONObject jsonMap  = JSONObject.fromObject(xml);
            Map<String, String> map = new HashMap<String, String>();
            Iterator<String> it = jsonMap.keys();  
            while(it.hasNext()) {  
                String key = (String) it.next();  
                String u = jsonMap.get(key).toString();
                map.put(key, u);  
            }
            String access_token = map.get("access_token");
            System.out.println("access_token=" + access_token);
    
            //获取ticket
            params.put("access_token",access_token);
            xml = HttpXmlClient.post("https://qyapi.weixin.qq.com/cgi-bin/get_jsapi_ticket",params); 
            jsonMap  = JSONObject.fromObject(xml);
            map = new HashMap<String, String>();
            it = jsonMap.keys();  
            while(it.hasNext()) {  
                String key = (String) it.next();  
                String u = jsonMap.get(key).toString();
                map.put(key, u);  
            }
            String jsapi_ticket = map.get("ticket");
            System.out.println("jsapi_ticket=" + jsapi_ticket);
    
            //获取签名signature
            String noncestr = UUID.randomUUID().toString();
            String timestamp = Long.toString(System.currentTimeMillis() / 1000);
            String url="http://mp.weixin.qq.com";
            String str = "jsapi_ticket=" + jsapi_ticket +
                    "&noncestr=" + noncestr +
                    "&timestamp=" + timestamp +
                    "&url=" + url;
            //sha1加密
            String signature = SHA1(str);
            System.out.println("noncestr=" + noncestr);
            System.out.println("timestamp=" + timestamp);
            System.out.println("signature=" + signature);
            //最终获得调用微信js接口验证需要的三个参数noncestr、timestamp、signature
        }
    
           /** 
         * @author:罗国辉 
         * @date: 2015年12月17日 上午9:24:43 
         * @description: SHA、SHA1加密
         * @parameter:   str:待加密字符串
         * @return:  加密串
        **/
        public static String SHA1(String str) {
            try {
                MessageDigest digest = java.security.MessageDigest
                        .getInstance("SHA-1"); //如果是SHA加密只需要将"SHA-1"改成"SHA"即可
                digest.update(str.getBytes());
                byte messageDigest[] = digest.digest();
                // Create Hex String
                StringBuffer hexStr = new StringBuffer();
                // 字节数组转换为 十六进制 数
                for (int i = 0; i < messageDigest.length; i++) {
                    String shaHex = Integer.toHexString(messageDigest[i] & 0xFF);
                    if (shaHex.length() < 2) {
                        hexStr.append(0);
                    }
                    hexStr.append(shaHex);
                }
                return hexStr.toString();
    
            } catch (NoSuchAlgorithmException e) {
                e.printStackTrace();
            }
            return null;
        }
    }
    

    2.2、controller代码(尽可能仔细阅读下面的每一行代码,特别是url部分)

    package com.luo.controller;
    
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Map;
    import java.util.UUID;
    import javax.servlet.http.HttpServletRequest;
    import net.sf.json.JSONObject;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.servlet.ModelAndView;
    
    import com.luo.util.HttpXmlClient;
    
    @Controller  
    public class UserController {  
    
        @RequestMapping("/")    
        public ModelAndView getIndex(HttpServletRequest request){  
    
            ModelAndView mav = new ModelAndView("index");  
            //获取access_token
            Map<String, String> params = new HashMap<String, String>();
            params.put("corpid","wx7099477f2de8aded");
            params.put("corpsecret","4clWzENvHVmpcyuA4toys0URkfYanIqWtxZ5plbisn6Cd5AVTF0thpaK6UAhjIvN");
            String xml = HttpXmlClient.post("https://qyapi.weixin.qq.com/cgi-bin/gettoken",params);
            JSONObject jsonMap  = JSONObject.fromObject(xml);
            Map<String, String> map = new HashMap<String, String>();
            Iterator<String> it = jsonMap.keys();  
            while(it.hasNext()) {  
                String key = (String) it.next();  
                String u = jsonMap.get(key).toString();
                map.put(key, u);  
            }
            String access_token = map.get("access_token");
    
            //获取ticket
            params.put("access_token",access_token);
            xml = HttpXmlClient.post("https://qyapi.weixin.qq.com/cgi-bin/get_jsapi_ticket",params); 
            jsonMap  = JSONObject.fromObject(xml);
            map = new HashMap<String, String>();
            it = jsonMap.keys();  
            while(it.hasNext()) {  
                String key = (String) it.next();  
                String u = jsonMap.get(key).toString();
                map.put(key, u);  
            }
            String jsapi_ticket = map.get("ticket");
    
    
            //获取签名signature
            String noncestr = UUID.randomUUID().toString();
            String timestamp = Long.toString(System.currentTimeMillis() / 1000);
            //获取请求url
            String path = request.getContextPath();
            //以为我配置的菜单是http://yo.bbdfun.com/first_maven_project/,最后是有"/"的,所以url也加上了"/"
            String url = request.getScheme() + "://" + request.getServerName() +  path + "/";  
            String str = "jsapi_ticket=" + jsapi_ticket +
                    "&noncestr=" + noncestr +
                    "&timestamp=" + timestamp +
                    "&url=" + url;
            //sha1加密
            String signature = HttpXmlClient.SHA1(str);
            mav.addObject("signature", signature);   
            mav.addObject("timestamp", timestamp);   
            mav.addObject("noncestr", noncestr);   
            mav.addObject("appId", "wx7099477f2de8aded"); 
            System.out.println("jsapi_ticket=" + jsapi_ticket);
            System.out.println("noncestr=" + noncestr);
            System.out.println("timestamp=" + timestamp);
            System.out.println("url=" + url);
            System.out.println("str=" + str);
            System.out.println("signature=" + signature);
            return mav;    
    
        }    
    }  
    

    2.3、前端js代码(尽可能仔细阅读下面的每一行代码)

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    <html>
    <head>
    <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
    <script>
        wx.config({
            debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
            appId: '${appId}', // 必填,企业号的唯一标识,此处填写企业号corpid
            timestamp: parseInt("${timestamp}",10), // 必填,生成签名的时间戳
            nonceStr: '${noncestr}', // 必填,生成签名的随机串
            signature: '${signature}',// 必填,签名,见附录1
            jsApiList: ['getLocation'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
        });
        wx.ready(function(){
        });
    
        wx.error(function(res){
        });
    </script>
    </head>
    <body>
    <button id="getBBS" style="width:1000px;height:600px;font-size:150px;" onclick="submitOrderInfoClick();">获取地理位置</button>
    </body>
    <script type="text/javascript">
    function submitOrderInfoClick(){
      wx.getLocation({
            success: function (res) {
                alert("小宝鸽获取地理位置成功,经纬度为:(" + res.latitude + "," + res.longitude + ")" );
            },
            fail: function(error) {
                AlertUtil.error("获取地理位置失败,请确保开启GPS且允许微信获取您的地理位置!");
            }
        });
    }
    </script>
    </html>

    三、源码下载

    http://download.csdn.net/detail/u013142781/9400470

    加上这篇文章,博主微信相关文章就有5篇,将会点亮博主微信开发博客专栏(左侧可看到),欢迎订阅。

    欢迎相互关注交流,博主会不断将工作上遇到的技术点写成博客分享给大家。

    展开全文
  • 微信开发】-HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地 HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地  我是应用在微信中,自定义菜单,菜单直接链接到这个HTML5页面,获取当前...

    【微信开发】-HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地

    HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地 
    我是应用在微信中,自定义菜单,菜单直接链接到这个HTML5页面,获取当前位置后,页面中定好目的地,这样打开页面后直接进入导航页面 
    可以省下先发送位置信息后,点确定再出导航,省一步,
    <!DOCTYPE html>
    <html lang="zh-cmn-Hans">
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0">
        <title>HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地</title>
        <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=wDYEcxgRRheZwyC9jpN1Tt7fzr2zjosZ"></script>  
        <script src="http://cdn.bootcss.com/jquery/1.11.1/jquery.min.js"></script><!--调用jQuery-->
    
        <style type="text/css">
            body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微软雅黑";}
        </style> 
    
    </head>
    
    <body>  
       <div id="allmap"></div>
    </body>  
    </html>  
    <script type="text/javascript">  
    
        var map = new BMap.Map("allmap");  
        var point = new BMap.Point(116.709684,39.89778);
        map.centerAndZoom(point, 16);  
        map.enableScrollWheelZoom(); 
    
        var myIcon = new BMap.Icon("myicon.png",new BMap.Size(30,30),{
            anchor: new BMap.Size(10,10)    
        });
    
        var marker=new BMap.Marker(point,{icon: myIcon});  
        map.addOverlay(marker);  
    
        var geolocation = new BMap.Geolocation();
        geolocation.getCurrentPosition(function(r){
            if(this.getStatus() == BMAP_STATUS_SUCCESS){
                var mk = new BMap.Marker(r.point);
                map.addOverlay(mk);
                //map.panTo(r.point);//地图中心点移到当前位置
                var latCurrent = r.point.lat;
                var lngCurrent = r.point.lng;
                //alert('我的位置:'+ latCurrent + ',' + lngCurrent);
    
                location.href="http://api.map.baidu.com/direction?origin="+latCurrent+","+lngCurrent+"&destination=39.89778,116.709684&mode=driving&region=北京&output=html";
    
            }
            else {
                alert('failed'+this.getStatus());
            }        
        },{enableHighAccuracy: true})
    
    
        map.addOverlay(marker);  
        var licontent="<b>健龙森羽毛球馆</b><br>";  
            licontent+="<span><strong>地址:</strong>北京市通州区滨河中路108号</span><br>";  
            licontent+="<span><strong>电话:</strong>(010)81556565 / 6969</span><br>";          
        var opts = { 
            width : 200,
            height: 80,
        };         
        var  infoWindow = new BMap.InfoWindow(licontent, opts);  
        marker.openInfoWindow(infoWindow);  
        marker.addEventListener('click',function(){
            marker.openInfoWindow(infoWindow);
        });  
    
    </script>


    展开全文
  • 微信公众号开发

    微信公众号开发绝大部分与移动端开发相同。不过相比移动端,微信浏览器的内核就一种,对兼容性的要求更低一些。

    安卓微信浏览器的内核属于魔改版的webkit内核。

    ios微信浏览器的内核兼容性处理更接近safari浏览器。

    绝大部分兼容性参照谷歌浏览器就行

    微信开发中与移动端不同的就是可以借助微信调用很多手机的硬件,通过微信封装的js调用一些微信的接口。

    微信分享

    微信允许用户将页面分享给其他用户或者朋友圈,或者qq。不过最常用的用户分享功能是分享给朋友与朋友圈。因为大多微信开发都涉及到微信登陆的功能,这导致页面在其他浏览器打不开。

    微信分享主要通过微信的jssdk中的分享接口来实现的。微信的jssdk的权限注入我在之前的文章内已经有所讲解,这里就不多说了。

    微信在引入js文件并且调用wx.config接口注入权限后,然后通过wx.ready接口去读取接口。主要是因为注入权限为异步的,而wx.ready接口就像wx.config接口的回调函数。

    wx.onMenuShareAppMessage({
        title: '', // 分享标题
        desc: '', // 分享描述
        link: '', // 分享链接,该链接域名必须与当前企业的可信域名一致
        imgUrl: '', // 分享图标
        type: '', // 分享类型,music、video或link,不填默认为link
        dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
        success: function () {
            // 用户确认分享后执行的回调函数
        },
        cancel: function () {
            // 用户取消分享后执行的回调函数
        }
    

    })

    微信分享给好友的接口为onMenuShareAppMessage。值得一提的是这个定义的是微信点击右上角分享给朋友的功能,微信不允许自定义分享的按钮。这里设置过是单击右上角分享的内容

    title是分享的标题

    desc描述

    link分享打开的链接,在分享给好友后打开会在链接里加一个from参数

    在success里面是用户分享成功的回调函数,可以在里面添加一些业务逻辑,比如说分享加积分功能。

    cancel是用户取消了分享的回调

    wx.onMenuShareTimeline({
        title: '', // 分享标题
        link: '', // 分享链接
        imgUrl: '', // 分享图标
        success: function () {
            // 用户确认分享后执行的回调函数
        },
        cancel: function () {
            // 用户取消分享后执行的回调函数
        }
    });
    分享到朋友圈的接口跟转发的接口差不多,就是不能分享音频与视频。
    展开全文
  • 在进行微信运营的时候,用户地理位置是我们进行营销策划、广告活动投放、用户精准营销的重要依据,今天我们就来分析一下微信开发中如何获取获取用户地理位置。 获取用户地理位置,你需要在微信公众平台开发者中心...

    在进行微信运营的时候,用户地理位置是我们进行营销策划、广告活动投放、用户精准营销的重要依据,今天我们就来分析一下微信开发中如何获取获取用户地理位置。

    获取用户地理位置,你需要在微信公众平台开发者中心开启上报地理位置接口功能,开启之后会在用户首次进入公众号时,弹出是否允许上报地理位置选项,如果选择允许则在用户每次进入公众号会话的时候微信会以xml形式将用户的地理位置上报到你开发者中心填写的url上。

    注意:用户地理位置是被动获取的,需用户同意后才会上报,微信公众平台开发不能主动获取用户地理位置。

    先看看官方给出的xml示例及解析。

    推送XML数据包示例:

    <xml>
    <ToUserName><![CDATA[toUser]]></ToUserName>
    <FromUserName><![CDATA[fromUser]]></FromUserName>
    <CreateTime>123456789</CreateTime>
    <MsgType><![CDATA[event]]></MsgType>
    <Event><![CDATA[LOCATION]]></Event>
    <Latitude>23.137466</Latitude>
    <Longitude>113.352425</Longitude>
    <Precision>119.385040</Precision>
    </xml>
    参数说明:


    下面来记录用户的地理位置信息到数据库.

    首先引用Wechat SDK,

    若对Wechat SDK不了解的,请点击查博客中对Wechat SDK详情。

    use  Com\Wechat;

    将数据插入数据库

    public function index(){
        	$agent = $_SERVER['HTTP_USER_AGENT']; 
    	if(!strpos($agent,"MicroMessenger")) {
    		echo '只能在微信浏览器中使用';
    		exit;
    	}
    
            $token = '7894578953485348944qwe'; //微信后台填写的TOKEN         
    	/* 加载微信SDK */
    	$wechat = new Wechat($token);
    	/* 获取请求信息 */
    	$data = $wechat->request();		 
    	if($data && is_array($data)){
    		M('wxuser_location')->add($data); 
                    //此处为写入数据库操作,至于数据库结构,数据定入操作根据你的系统决定
    	}
    }
    保存到数据库中结果如下,

    这就把用户的地理位置数据记录下来了,以后如果需要根据用户地理位置推送某些消息(如附近的门店),就可以在数据库中查询用户的最近的一次地理位置信息来推送了,如你的微信菜单上有一个按钮叫做“附近门店”,就可以把这个地理位置再匹配你门店地理位置选择性的向用户推送,这个留在下一节来讲,敬请关注。


    转载地址:http://www.360doc.com/content/15/0818/16/10227105_493229885.shtml

    详细参考:http://blog.csdn.net/fanhu6816/article/details/52123394

    展开全文
  • 微信开发获取地理位置实例(java),使用环境 eclipse + maven + springmvc,虽然项目名是first_maven_project,但是确实是微信开发实例哈,不要有任何怀疑,免费分享啦,哈哈。实例讲解欢迎访问博主博客...
  • 微信开发之架构设计

    2014-10-28 14:21:27
    微信作为一款app,提供了友好的... 本文将讲解微信开发的前期准备,包括微信开发上的一些坑、架构上的设计、接口上需要注意的地方,全部来自自己的开发经验,如有不对,请指正。   微信开发的坑   1、微信授权
  • 微信小程序-获取当前城市位置 1, 获取当前地理位置,首先要拿到用户的授权wx.openSetting; 2,微信的getLocation接口,获取当前用户的地理位置微信返回的是经纬度,速度等参数); 3,微信没有将经纬度直接...
  • 关键字:微信开发图书 微信公众平台开发书籍 微信图书 微信开发书籍 微信图书推荐 微信开发图书推荐  本文介绍了当前图书市场上最主要的微信公众平台开发类书籍,并对每本书的特色做了简要点评,供有需要购买的...
  • 过年前后做了个微信公众号项目,已经过去一段时间了,抽空回忆总结下基本流程吧,不然很快估计自己就忘了。。 微信公众平台官网:https://mp.weixin.qq.com 文章目录一、注册公众号二、了解公众号管理页面三、必备...
  • 准备工作最近学习微信公众平台的开发,在申请一个微信公众号的时候,发现如果不是公司或组织只能申请订阅号(并且是个人的),而且不能使用微信提供的高级接口,所以如果想要使用公众平台的高级接口的话,申请一个...
  • 用户点击微信公众号底部【校区位置】菜单,打开应用页面,该页面中调用微信JSSDK打开微信内置地图,并设置目标地点(叩丁狼教育校区),此时可看到用户当前位置与目标地点位置的距离,还可通过右下角绿色按钮,调用...
  • 微信开发-NATAPP的使用

    2018-01-17 21:59:29
    1.1 在进行微信公众号开发时,我们需要搭建网站,并且有可能需要将项目部署到外网可访问的域名上,并且随时都有可能修改网站内容进行调试。如果能够将内网ip映射到外网上,大大方便了开发者的调试。每次发布只需本地...
  • 本部分需要用到微信的JS-SDK,微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包。 通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照、选图、语音、位置等手机系统的能力,同时可以...
  • 发送消息,是指用户公众号向用户发送相应形式的消息。根据微信开发文档,由以下四种形式:被动回复,群发接口,客服消息接口以及模板消息接口。...这一部分较为简单,正式进行微信开发的第一步就是,在公众号中基本
  • ThinkPHP5.0微信开发之获取用户地理位置
  • 今天整理一下微信开发中遇到的图片和附件的上传问题。 开发环境参考:微信开发(一)--分享接口 点击打开链接 由于是基于weixin-java-tools 封装的java sdk,所以在微信底层处理上我们可以直接调用WxMpService. ...
  • 微信的WeixinJSBridge还是很牛逼的,虽然官方文档只公布了3个功能,但是还内置的很多功能没公布,但是存在 比如自动关闭当前浏览器内置函数:WeixinJSBridge.call('closeWindow'); 直接调用即可。
  • 微信H5开发(二)

    2018-07-15 10:45:14
    第一次使用微信开发文档的时候,感觉文档里面写的内容不算太难,但在实际开发中会碰到很多预想不到的问题。 微信开放平台、微信商务平台 有什么用?都在哪里用? 首先从微信公众号讲起,期间用到微信商务平台和...
1 2 3 4 5 ... 20
收藏数 88,988
精华内容 35,595
关键字:

当前位置 微信开发