微信公众号订阅号开发项目小记

工作描述:微信公众号订阅号开发抽奖相关页面

软件环境: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的本地文件选择,而安卓可以,,但当调用两遍方法就可以。。代码如下

 







    

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信公众号有两种类型,分别是订阅服务。它们之间的区别主要体现在以下几个方面: 1. 发送消息频率:订阅每月可以发送四条消息,而服务每天可以发送一条消息。 2. 支付功能:服务具有支付功能,可以进行线上支付,而订阅没有支付功能。 3. 订阅通知:服务可以设置订阅功能,用户可以主动订阅并接收服务下发的通知,如信用卡动账提醒、物流到货通知等。而订阅则是用户主动订阅服务按需下发的通知能力。 4. 跳转能力:服务可以跳转到公众图文消息、网页和小程序,而订阅只能跳转到服务通知。 总结来说,订阅适合发布一些资讯类内容,而服务适合提供更多的功能和服务,如支付、订阅通知等。选择注册哪种类型的公众,可以根据自己的需求和业务来决定。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [微信公众号订阅服务主要区别](https://blog.csdn.net/weixin_42105570/article/details/119690711)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [微信公众号订阅消息](https://blog.csdn.net/xixingzhe2/article/details/126759849)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值