前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微信开发笔记

微信开发笔记

作者头像
lilugirl
发布2019-05-28 10:37:23
6900
发布2019-05-28 10:37:23
举报
文章被收录于专栏:前端导学

要实现微信版页面的授权登录必须:

1 有服务号 2 页面在微信中打开

要实现网页版微信扫码登录必须: 1 有开发平台账号 2 网站服务已经被绑定到开发平台账号

有些ajax请求是跨域请求会报错,可以采用本服务器服务器语言如php用 curl_init方法 调用远程微信信息。

本服务器js调用本服务器php页面得到返回结果 相关代码

代码语言:javascript
复制
public function https_request($url,$data = null){ 
		$curl = curl_init(); 
		curl_setopt($curl, CURLOPT_URL, $url); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); 
		if (!empty($data))
			{   curl_setopt($curl, CURLOPT_POST, 1); 
				curl_setopt($curl, CURLOPT_POSTFIELDS, $data); } 
				curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
				$output = curl_exec($curl); curl_close($curl); 
				return $output; 
			}
代码语言:javascript
复制
$result = https_request($url);  
		
$jsoninfo = json_decode($result, true);

openid是针对appid和微信号的唯一,同一个微信号 针对不同的appid ,openid是不同的。但是同一个微信号针对一个特定的appid的openid是永恒不变的。

现在很多项目都采用的前后端分离的部署策略, 那么前端代码通常要调用不同域的后端api。 为了确保后端代码提供的api仅对部分域名开放 可以采用以下代码保护你的api

代码语言:javascript
复制
header("Content-type: application/json;  charset=UTF-8");
$http_origin = $_SERVER['HTTP_ORIGIN'];

if ($http_origin == "http://m.xxx.com" || $http_origin == "http://pc.xxx.com" ){
    header("Access-Control-Allow-Origin: $http_origin");
}

if(!in_array($http_origin,array('http://m.xxx.com','http://pc.xxx.com'))){
   die('去死');
}

微信的授权一层一层拿到,那么其实可以在ajax里套ajax,我为了拿到用户的信息并且在数据库里更新数据,套了三层ajax,发现速度还可以,如果每获得一个结果重定向页面再处理数据速度反而会慢。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档