真正赚钱的微信公众号后台开发求指导

只需一步,快速开始
后使用快捷导航没有帐号?
所属分类: & &
1、清楚的描述问题,必要时请配图、代码等!
2、当得到最佳答案时,请务必手动确认最佳答案,增加信用度,以便下次问答时,获得更快速更好的回答!
3、请及时查看问题回复
4、本版为技术问答板块,禁止无意义的灌水回复
- [回帖奖励
1 / 132 页
公众号开发最新问答
公众号一周最热
一周热门资源
www.henkuai.com—微信开发者的分享交流平台,专注微信开发生态。
天津市滨海新区中新生态城中成大道生态建设公寓9号楼3层301
微信公众号· information & share ·
了解行业新观点,案例剖析,行业流行及创新,增强服务意识以及专业水准;
互联网职业当一个颠覆性的运用形态出现后,就简单在原有的版图上扯开一个口...
对商家而言,腾讯小程序开发,能够更快完成流量变现,更好的运用线上线下结...
立异大会在我国榜首高塔广州小蛮腰落下帷幕。大会以“小程序开发”为主题,...
在“流量荒”的布景下,坐拥10亿+交际流量的微信小程序工具受到了很多企业的...
· They choose ·
友情链接:我要找人做微信公众号开发
我要找人做微信公众号开发,有商城。我是做饮料批发的,主要功能就是让客户在微...
我要找人做网站定制开发;做个公众号的开发,具体需求有文档,需要做个兼职平台,公众号,可查看各用户推的...
设计开发提供的word网站中两页的前端页面
做微信公众号开发需求外包介绍
本页是猪八戒网为您找到的做微信公众号开发需求外包信息,包括威客参与数、剩余参与机会及截止日期等,为个人及公司、企业提供最新最全的做微信公众号开发需求外包信息,查找做微信公众号开发需求,尽在猪八戒网。
做微信公众号开发需求推荐微信公众号开发中遇到的问题
我的图书馆
微信公众号开发中遇到的问题
版权声明:本文为博主原创文章,未经博主允许不得转载。
的统一下单接口(https://api.mch.weixin.qq.com/pay/unifiedorder)中,下单时,有这样一个参数:notify_url,该参数是为接收微信支付异步通知回调的地址,通知url必须为直接可访问的url,不能携带参数。之前我做回调的时候,为了性能方面的考虑,没有使用这种方式,而是在这个方法中:
[javascript]
wx.ready(function(){&&&&&&wx.chooseWXPay({&&&&&&&&&&"timestamp":&timestamp,&//&支付签名时间戳,注意微信jssdk中的所有使用timestamp字段均为小写。但最新版的支付后台生成签名使用的timeStamp字段名需大写其中的S字符&&&&&&&&&&"nonceStr":&nonceStr,&//&支付签名随机串,不长于&32&位&&&&&&&&&&"package":&'prepay_id='&+&prepayId,&//&统一支付接口返回的prepay_id参数值,提交格式如:prepay_id=***)&&&&&&&&&&"signType":&'MD5',&//&签名方式,默认为'SHA1',使用新版支付需传入'MD5'&&&&&&&&&&"paySign":&paySign,&//&支付签名&&&&&&&&&&success:&function&(res)&{&&&&&&&&&&&&&&//支付成功&&&&&&&&&&},&&&&&&&&&&cancel:function(res){&&&&&&&&&&&&&&//支付取消&&&&&&&&&&},&&&&&&&&&&fail:function(res){&&&&&&&&&&&&&&//支付失败&&&&&&&&&&}&&&&&&});&&});&&
当success、cancel、fail的时候,用ajax直接调用后台做回调操作,这样做的好处是不用在点击支付的时候做操作订单等一系列操作,提高了支付弹出框弹出的速度;但是后来测试的时候,发现用户支付完成之后,如果没有点击微信支付成功页面右上角的完成按钮时,就回调不到success中的回调方法。那这样问题就很大了,所以我只能修改成在notify_url中做回调操作,但是调用这个方法的时候,不能携带参数,那就不知道是哪个订单做的回调。我是这样解决的,下单接口中有个attach参数,我把订单的id放入到了这个参数中,回调时会原样返回来,不知道有没有其他方法没有,欢迎大家提供方法。
2、微信分享
在需要被分享的页面,引入js:&script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js" type="text/javascript"&&/script&
准备微信Jssdk的基本配置信息:
[javascript]
wx.config({&&&&&&appId:&appId,&//&必填,公众号的唯一标识&&&&&&timestamp:&timestamp,&//&必填,生成签名的时间戳&&&&&&nonceStr:&nonceStr,&//&必填,生成签名的随机串&&&&&&signature:&signature,//&必填,签名,见附录1&&&&&&jsApiList:&['onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone','onMenuShareTimeline']&//&必填,需要使用的JS接口列表,所有JS接口列表见附录2&&});&&wx.error(function(res){&&&&&&alert(res.errMsg);&&});&&
准备好参数之后调用相关分享的方法:
[javascript]
wx.ready(function(){&&&&&&//分享到聊天&&&&&&wx.onMenuShareAppMessage({&&&&&&&&&&title:&shareTitle,&//&分享标题&&&&&&&&&&desc:&shareDesc,&//&分享描述&&&&&&&&&&imgUrl:&shareImg,//分享图片&&&&&&&&&&success:&function&()&{&&&&&&&&&&&&&&&//&用户确认分享后执行的回调函数&&&&&&&&&&},&&&&&&&&&&cancel:&function&()&{&&&&&&&&&&&&&&&//&用户取消分享后执行的回调函数&&&&&&&&&&}&&&&&&});&&&&&&&&&&&&//分享到QQ&&&&&&wx.onMenuShareQQ({&&&&&&&&&&title:&shareTitle,&//&分享标题&&&&&&&&&&desc:&shareDesc,&//&分享描述&&&&&&&&&&imgUrl:&shareImg,//分享图片&&&&&&&&&&success:&function&()&{&&&&&&&&&&&&&&&//&用户确认分享后执行的回调函数&&&&&&&&&&},&&&&&&&&&&cancel:&function&()&{&&&&&&&&&&&&&&&//&用户取消分享后执行的回调函数&&&&&&&&&&}&&&&&&});&&&&&&&&&&&&//分享到微博&&&&&&wx.onMenuShareWeibo({&&&&&&&&&&title:&shareTitle,&//&分享标题&&&&&&&&&&desc:&shareDesc,&//&分享描述&&&&&&&&&&imgUrl:&shareImg,//分享图片&&&&&&&&&&success:&function&()&{&&&&&&&&&&&&&&&//&用户确认分享后执行的回调函数&&&&&&&&&&},&&&&&&&&&&cancel:&function&()&{&&&&&&&&&&&&&&&//&用户取消分享后执行的回调函数&&&&&&&&&&}&&&&&&});&&&&&&&&&&&&//分享到qq空间&&&&&&wx.onMenuShareQZone({&&&&&&&&&&title:&shareTitle,&//&分享标题&&&&&&&&&&desc:&shareDesc,&//&分享描述&&&&&&&&&&imgUrl:&shareImg,//分享图片&&&&&&&&&&success:&function&()&{&&&&&&&&&&&&&&&//&用户确认分享后执行的回调函数&&&&&&&&&&},&&&&&&&&&&cancel:&function&()&{&&&&&&&&&&&&&&&//&用户取消分享后执行的回调函数&&&&&&&&&&}&&&&&&});&&&&&&&&&&&&//分享到朋友圈&&&&&&wx.onMenuShareTimeline({&&&&&&&&&&title:&shareTitle,&//&分享标题&&&&&&&&&&desc:&shareDesc,&//&分享描述&&&&&&&&&&imgUrl:&shareImg,//分享图片&&&&&&&&&&success:&function&()&{&&&&&&&&&&&&&&&//&用户确认分享后执行的回调函数&&&&&&&&&&},&&&&&&&&&&cancel:&function&()&{&&&&&&&&&&&&&&&//&用户取消分享后执行的回调函数&&&&&&&&&&}&&&&&&});&&});&&
在wx.config中,timestamp、nonceStr、signature三个参数强烈建议用ajax动态获取,如果不是动态获取的首次分享可能没有问题,但是当被分享人打开这个页面再次分享时就会出现问题,这个一定要注意。
[javascript]
var&&&var&nonceS&&var&&&//这里要特别强调这个url,获取signature时提供的url,一定要用这种方法,&&//encodeURIComponent类似于java中的URIEncoding.encode方法,因为当url中有传递的参数时,如果不加密就会报错&&var&url&=&encodeURIComponent(location.href.split('#')[0]);&&$.ajax({&&&&&&type:&"POST",&&&&&&async:&false,&&&&&&url:&"${pageContext.request.contextPath&}/course/getJsSdk.action",&&&&&&data:"url="+url,&&&&&&success:&function(msg){&&&&&&&&&&var&msgArr&=&msg.split("##");&&&&&&&&&&timestamp&=&msgArr[0];&&&&&&&&&&nonceStr&=&msgArr[1];&&&&&&&&&&signature&=&msgArr[2];&&&&&&},&&&&&&error:&function(msg){&&&&&&&&&&alert("数据错误!");&&&&&&}&&});&&
getJsSdk方法:
/**&&*&获取JsSdk的信息&&*&@throws&Exception&&*/&&@Action("getJsSdk")&&public&void&getJsSdk()&throws&Exception{&&&&&&String&url&=&request.getParameter("url");&&&&&&log.info("url&=&"&+&url);&&&&&&String&ticket&=&AdvancedUtil.getTicket(WSPostUtil.getToken());&&&&&&jssdk&=&JsSdkUtil.getSignature(ticket,url);&&&&&&printInfo(jssdk.getTimestamp()&+&"##"&+&jssdk.getNoncestr()&+&"##"&+&jssdk.getSignature());&&}&&
这个方法中用到的相关方法,我在上篇博客中已经有提到,如果有疑问的,可以给我留言,谢谢。
3、获取openId(用户没有关注公众号)
如果要获取openid,可以在页面中把链接地址中把链接写成这种形式:
&a href="https://open.weixin.qq.com/connect/oauth2/authorize?appid=&redirect_uri=http%3A%2F%2Fwww.XXX.com%2Ftest.action&response_type=code&scope=snsapi_base&state=state#wechat_redirect"&获取openId&/a&,其中把appid换成自己公众号的appid,然后在test方法中,通过获取到的code来获取openId。scope=snsapi_base当把scope参数设置成snsapi_base时,也就只能获取到openId;如果要想获取用户的基本信息,要把scope设置成snsapi_userinfo,在用户没有关注公众号的时候,通过用户授权来获取用户信息。
喜欢该文的人也喜欢如何学习微信后台开发?_百度知道
如何学习微信后台开发?
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
水胡萝卜02
水胡萝卜02
对于初学者是有点难度的,我也是做这行的,我一般都是用APP软件A+,它的主要功能是针对不会微信公众平台后台开发运营者。
为你推荐:
其他类似问题
您可能关注的内容
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 微信签到一天10元 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信