微信开发热度不断攀升,但他的服务号、订阅号着实让人头疼,以下摘录两个地址供参考。
微信公众平台开发者文档:http://mp.weixin.qq.com/wiki/index.php
服务号、订阅号的说明:http://kf.qq.com/faq/120911VrYVrA130805byM32u.html
看完这些文档,相信很多朋友还是不明白所以然,以下给出微信view类型的菜单,通过Oauth2.0接口获取openid的实例,其他简单实例见附件。
<?php //启用session session_start(); //编码 header("Content-type: text/html; charset=utf-8"); //保存微信openid $weixin_openid = ""; //保存从微信得到的code $code = ""; //获得菜单中设置的state值 $state = ""; //修改为注册的测试号信息 $appid = "wx834404c1d1dbb5ec"; $secret = "bf03cfa823d80dd537bd18e83ce9a4e4"; if (isset($_GET['code']) && isset($_GET['state']) ){ $weixin_openid = GetOpenid($_GET['code']); $code = $_GET['code']; $state = $_GET['state']; //echo $resultStr; }else{ echo "NO CODE"; return ; } // store session data $_SESSION['weixin_openid']=$weixin_openid; if($state == "s1"){ //我的课堂 header('Location: courseCenter.php'); }else if($state == "s2"){ //订单记录 header('Location: orderList.php'); }else{ $textTpl="由认证接口进入我的课堂,<br/>您的 wx_openid: %s <br/> code: %s <br/> state: %s <br/> <a href='orderList.php'>订单记录</a>"; $resultStr = sprintf($textTpl, $weixin_openid, $code, $state); echo $resultStr ; } //获取微信的openid function GetOpenid($c_code) { $url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" . $appid . "&secret=" . $secret . "&code=" . $c_code . "&grant_type=authorization_code"; //$url = "http://www.baidu.com"; $result = getData($url); $jsondecode = json_decode($result); if($jsondecode != null){ if(property_exists ( $jsondecode, "openid" ) ) { return $jsondecode->{"openid"}; }else{ return "code is invalid."; } } return null; } //获取https的get请求结果 function getData($c_url) { $curl = curl_init(); // 启动一个CURL会话 curl_setopt($curl, CURLOPT_URL, $c_url); // 要访问的地址 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); // 从证书中检查SSL加密算法是否存在 curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器 curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转 curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer // curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求 // curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包 curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环 curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回 $tmpInfo = curl_exec($curl); // 执行操作 if (curl_errno($curl)) { echo 'Errno'.curl_error($curl);//捕抓异常 } curl_close($curl); // 关闭CURL会话 return $tmpInfo; // 返回数据 } ?>
相关推荐
用户点击微信自定义菜单view类型按钮后,微信客户端将会打开开发者在按钮中填写的url值 (即网页链接),达到打开网页的目的,但是view不能获取用户的openid,需要使用微信“网页授权获取用户基本信息”高级接口结合...
- 用户信息接口:使用获取的access_token和openid从微信服务器获取用户信息。 - 消息处理接口:接收并处理微信服务器的推送消息,根据消息类型做出相应响应。 5. **代码结构与组织** 项目可能按照MVC(Model-...
微信提供了用于登录的API,包括请求授权码、获取access_token、获取openid和获取用户基本信息等步骤。在MvcApplication1项目中,这些接口的调用会体现在控制器或服务类中。 3. **Web应用程序结构**: “WebWeChat...
这部分会涉及到微信开放接口的调用,如获取用户openid、昵称和头像等。 2. **页面路由**:学习如何在小程序中切换页面,理解`wx.navigateTo`、`wx.reLaunch`、`wx.switchTab`等路由API的用法。 3. **数据管理**:...
请注意,实际操作中需要替换`GetAccessToken`方法为获取微信Access Token的实现,同时替换`OPENID列表`为实际的用户OpenID。 通过这种方式,我们可以在不直接发送消息的情况下检测微信好友关系,避免了打扰对方的...
例如,登录功能可能涉及获取微信用户的OpenID,商品购买可能涉及订单创建和支付接口调用。 5. **JSON配置文件**:每个小程序页面都有对应的json配置文件,用来设置页面的导航栏、背景色、网络请求域名等属性,定义...
11. **微信登录与用户授权**:通过`wx.login`获取用户的OpenID,结合后端服务器实现用户身份验证。此外,还可以使用`wx.authorize`请求用户授权,获取用户信息。 12. **导航与跳转**:`wx.navigateTo`、`wx....
5. 用户登录与授权:微信小程序支持一键登录功能,用户授权后,可以获取微信用户的OpenID,用于识别用户身份并实现个性化服务。 三、源码学习与实践 通过分析和研究这个源码,你可以了解如何构建微信小程序的具体...
9. 授权与登录:微信小程序提供了`wx.login`接口获取用户的OpenID,用于识别用户并提供个性化服务。同时,可能会涉及到微信的静默授权,让用户无感知地完成登录过程。 10. 页面生命周期:每个小程序页面都有其特定...
此外,可能还有登录、评论等涉及到微信接口的功能,比如`wx.login`获取用户OpenID,`wx.getUserInfo`获取用户基本信息。 5. **页面路由**: 微信小程序的页面跳转是通过`wx.navigateTo`、`wx.redirectTo`、`wx....
3. 微信授权登录:调用微信的登录接口,获取用户的OpenID和AccessToken。 4. 用户信息获取:利用AccessToken获取用户基本信息,如昵称、头像等。 至于“小程序”,可能源码还展示了如何在Android应用中调用微信小...
微信小程序能够获取用户基本信息,通过wx.login API获取用户的OpenID,结合后端服务器实现用户登录和授权。保持用户登录态,便于实现个性化推荐和服务。 9. **状态管理**: 在小程序中,可以使用官方提供的全局...
微信小程序提供了wx.login()方法,用于获取用户的OpenID,然后通过后端服务器进行身份验证。 9. **推送与通知**: 如果小程序有提醒用户用电情况的功能,可能需要使用到微信小程序的消息推送服务,如定时推送用电...
这个"微信小程序开发-今日更新选课投票案例源码.zip"压缩包包含了一个具体的开发实例,可以帮助我们深入了解微信小程序在实际应用场景中的开发流程和技术要点。 1. **微信小程序开发环境**:首先,开发微信小程序...
- **用户授权**:微信小程序的用户登录授权机制,如何获取和使用微信用户的OpenID。 - **UI设计**:遵循微信小程序的设计规范,创建美观、易用的用户界面。 - **调试与发布**:学会使用微信开发者工具进行代码调试、...
微信小程序提供了微信账号登录的接口,如wx.login(),获取用户的OpenID,然后服务器端进行身份验证。 7. **推送通知**:如果应用支持离线消息提醒,可能需要结合微信服务器的推送服务,当有新消息时,向用户发送...
在本压缩包“微信小程序开发-零食商城案例源码.zip”中,包含了一个完整的微信小程序开发实例,专注于创建一个零食商城应用。这个案例为开发者提供了一个实战平台,以学习和理解微信小程序的开发流程和技术要点。 ...
本资源是“微信小程序开发-仿V2EX社区案例源码”,它提供了模仿知名论坛V2EX社区功能的小程序开发实例,适合学习者理解和掌握微信小程序的基本开发流程和技术要点。 V2EX社区以其独特的设计和活跃的用户群体著称,...
9. **微信登录**:为了实现个性化服务,开发者可能会使用微信小程序的登录功能,如wx.login(),获取用户的OpenID,以此关联到京东账户。 10. **调试与发布**:开发完成后,开发者会使用微信开发者工具进行调试,...