微信公众号订阅号开发项目小记
工作描述:微信公众号订阅号开发抽奖相关页面
软件环境:WebStrom ,微信开发者工具v0.7.0等开发工具
项目描述:订阅号添加抽奖页面
1、用户每天三次机会进行抽奖,奖品概率数量可控,存取用获奖奖品,存取用户输入的用户地址方便发放奖品
2、项目主要采取 jqWeUi ,rem,jquery.cookie.js等完成页面布局等操作;
项目中遇到问题及处理:
1、用户管理-网页授权获取用户openid/用户基本信息问题
由于订阅号没有从页面获取授权的,而抽奖中奖之后需要存储用户中奖信息及地址,方案有两个:(1)为微信号开发后台,跳转也抽奖页面地址时将用户openId拼接在后面。(2)用服务号鉴权跳转抽奖页面,鉴权成功后除非用户退出微信清空缓存,一般不需要再次鉴权,由于公司刚好有服务号最终选择的方式也是第二种。
2、微信号的开发设置
(1)登录微信公众(登录的是服务号),设置——公众号设置---选择功能设置,如图所示
分别更具要求设置JS接口安全域名和网页授权域名(网页授权域名只有服务号才有这个选项)
注意:网页授权的域名填写不带www ,而页面部署服务器,跳转的页面地址带www,在跳转地址的时候会报参数错误
(2)获取微信公众号密码
获取到密码就可以正式对接微信号了;
(3)对于微信的接口是无法通过ajax请求的,存在跨域问题,都要用后台请求,然后返回给前端;这里说请求的都是后台转过的地址
获取Access_token:有效时间7200秒 可被请求次数100000
https请求方式: GET
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
推荐参考:http://www.jb51.net/article/111743.htm
(4)微信网页授权
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842
授权的页面再次访问都不会重复提交,为了方便测试,推荐使用官方的微信web开发工具(在使用微信开发工具前要先把自己变成这个公众号的开发者路径:开发--》开发者工具--》绑定开发者账号,输入自己微信号同意一下就可以了)
(5)JSSDK 使用
https://mp.weixin.qq.com/wiki?t=resource/
用第一步拿到的access_token 采用http GET方式请求获得jsapi_ticket(有效期7200秒,开发者必须在自己的服务全局缓存jsapi_ticket):https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi;获得jsapi_ticket之后,就可以生成JS-SDK权限验证的签名了。
在这里进行签名算法,可以是获取到后js进行签名,也可以直接是后台签完,讲签名与接口参数一起返回(目前本项目是后台签名)
wx.config({
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: '', // 必填,公众号的唯一标识
timestamp: , // 必填,生成签名的时间戳
nonceStr: '', // 必填,生成签名的随机串
signature: '',// 必填,签名
jsApiList: [] // 必填,需要使用的JS接口列表
});
将参数传入后就可以直接调用 微信的js ;
具体使用可以参考demo:http://203.195.235.76/jssdk/
(6)
接下来就是页面的开发。。。。微信的页面开发就是普通的手机端开发,单位使用rem. 开始引入一段js,来为body的font-sizes设置字体大小;页面的宽度设置就是百分比,慢慢调整,加上一些jqweui插件,开发起来没有太大难度。
jqweui地址:http://jqweui.com/
注意:在gethub下载demo时
他的默认下载是master,而所有编译后的代码都在 dist
目录下,为了减少垃圾文件,master默认忽略了这个目录,你可以自行编译或者切换到 build
(7)在上传文件时出现了一个问题
ios系统触发click的点击事件,调用$("#upload").click(),方法无法开启input:file的本地文件选择,而安卓可以,,但当调用两遍方法就可以。。代码如下
微信公众号订阅号开发项目小记相关推荐
- 微信公众平台订阅号运营11个秘决
据媒体报道微信用户数已经突破6亿!相信在不久的将来微信必将成为重要营销渠道,很多企业都开通了微信号,但是99%微信号都没有专人负责运营,爱煮饭负责运营企业微信订阅号大概有半年多的时间,从0增加到180 ...
- 微信公众平台订阅号如何升级转换为服务号?
很多用户开通微信公众平台时选择了订阅号,但是后来又想用微信支付.小店等功能,就需要把订阅号变成服务号.因微信官方政策限制,目前订阅号改为服务号的方法是进行账号迁移,这也是唯一的方法了. 微信公众平台订 ...
- 微信公众平台订阅号和服务号和企业号的区别
为了帮助网友解决"微信公众平台订阅号和服务号和企业号的区别"相关的问题,中国学网通过互联网对"微信公众平台订阅号和服务号和企业号的区别"相关的解决方案进行了整理 ...
- 微信公众平台订阅号、服务号和企业号三者之间的区别与联系
现在很多人用微信营销,但是网上经常能看到有人问订阅号.服务号和企业号到底该选择哪个,下面我们会详细的讲解订阅号.服务号和企业号的区别与联系,需要的朋友可以参考下. 9月18日,微信正式开启了微信企业号 ...
- 微信公众平台订阅号和服务号的区别详解
什么是订阅号? 订阅号:为媒体和个人提供一种新的信息传播方式,主要功能是在微信侧给用户传达资讯:(功能类似报纸杂志,提供新闻信息或娱乐趣事) 适用人群:个人.媒体.企业.政府或其他组织. 什么是服务号 ...
- 微信公众平台订阅号与服务号的区别
订阅号 主要便于为用户传达资讯(类似报纸,杂志),如果想简单的发送消息,达到宣传效果,建议可选择订阅号. 服务号 主要偏于服务交互(类似银行,114,提供服务查询),如果想进行商品营销,进行商品售卖, ...
- python开发微信订阅号如何申请_基于Python的微信公众平台二次开发(Python常用框架、订阅号开发、公众号开发)...
1.1.课程的背景 微信公众平台的火热程度已经不用多言,无论是个人还是企业,政府还是商家,都已经开始搭建微信公众平台,微信的作用已经被各界人士认可.微信公众平台的技术需求市场缺口巨大.同时python ...
- 微信公众平台二次开发 API开发 服务账号开发 订阅号开发
移动互联网时代已经到来,微信已经有6亿多的用户,是移动端最大的入口.微网站,微商城建设,提供定制化服务,根据客户需求开发.客户很方便就能了解到公司的所有信息和最新动态,随时随地都可以跟公司进行互动,增 ...
- 微信公众号订阅号开发的学习(二):获取用户发送的消息、简单的自动回复、自定义菜单
获取用户发送的消息 基础 微信服务器会发送两种类型的消息给开发者服务器. get请求 验证服务器的有效性 post请求 微信服务器会将用户发送的数据转发到开发者服务器上 实现 基于微信公众号订阅号开发 ...
- 微信开发专题---7微信公众号订阅号与服务号的区别
微信公众平台现在已分成订阅公众号和服务公众号两种类型.两者的区别大致如下: 一.目的不同 1.服务号: 旨在为用户提供服务. 2.订阅号: 为用户提供信息和资讯. 二.功能不同 服务号的功能 1.1个 ...
最新文章
- mmdetection训练出现:IndexError: list index out of range 错误
- 第18节 知识管理
- 第三章 Matlab数组
- JQuery常用的代码片段
- android一键分享功能不使用任何第三方sdk
- python:封装连接数据库方法
- 改写DataCogs在MOSS列表中实现三级联动字段
- pythonjavascript一起开发_Python开发【第十一篇】:JavaScript
- android webview的一些设置问题
- ios Quartz 各种绘制图形用法
- 一次性删除maven本地仓库下的.lastUpdated 结尾的文件
- 利用TCP协议进行ping
- java-php-python-ssm在线购书商城系统计算机毕业设计
- python中索引越界的常见原因
- Matlab-数值计算方法作业
- 监控摄像头网页直播解决方案
- 交换机接出来的网线可以再接上无线路由器实现无线上网吗
- WIndows 7 拷贝XP的共享文件夹时,出现您需要权限来执行此操作 的提示
- vlc播放g711 rtp流媒体sdp文件及其参数介绍
- 无需注册试用ChatGPT
热门文章
- 计算机里没有硬盘 右下角有图标,电脑右下角显示硬盘图标怎么去掉<br?电脑 – 手机爱问...
- 计算机电源检测软件,电脑电源检测工具
- Cuteftp9.0安装说明书
- 对联广告html,Js对联广告代码示例(入门)
- 阿帕奇web服务器 java_WEB服务器搭建(Apache+Tomcat+eclipse)
- 临时解决Mac OS系统下kernel_task占用大量CPU资源导致系统卡顿一例(不用删plist文件)
- rk3399 外接一个usb声卡,同时指定另一个usb声卡做放音功能
- java调用soap接口_java远程调用soap协议接口
- balabala视频格式转换器
- 年会弹幕文字_公司办年会有哪些比较创意的形式?