php登录,跨域,记录/读取cookie,session
时间:2011-06-25
来源:互联网
今天做项目突然碰到在A平台上要登录B平台的用户,并且读取COOKIE和SESSION数据,并且B平台记录已登录状态,我把自己处理的思路说下吧,只是一种分享,没其他意思,还请高手指教。
我使用的js框架jquery,php无框架自己写的
文件说明:login.js,main.php 是b.com
jsonp_login.html 是a.com
login.js
复制代码
jsonp_login.html
复制代码
main.php
复制代码
我使用的js框架jquery,php无框架自己写的
文件说明:login.js,main.php 是b.com
jsonp_login.html 是a.com
login.js
- $.ajax({
- type:'GET',
- url:'http://a.com/run/jsonp_login.html?account=' + param.usr + '&password=' + param.pwd + '&callback=?',
- dataType:'jsonp',
- jsonp:'callback',
- success:function(data_row) {
- if(data_row == null || data_row.state == null) {
- alert('登录失败');
- return;
- }
-
- str = '';
-
- switch(data_row.state) {
- case '1':
- str = '密码错误,请注意密码大小写';
- break;
- case '2':
- str = '用户已屏蔽,因违反个人用户相关约定';
- break;
- case '99':
- break;
- default:
- str = '登录超时,请稍后在试';
- break;
- }
-
- if(str) {
- alert(str);
- return;
- }
-
- //记录用户ID和SESSION_ID
- $.cookie('sid', data_row.sid);
- $.cookie('mid', data_row.mid);
-
- location.href = 'main.php';
- }
jsonp_login.html
- /......登录成功.....这里代码就不写了,大家都知道吧............/
-
- //使用P3P
- header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');
-
- //记录用户COOKIE
-
- //进行登录状态输出
- echo $_GET['callback'].'({state:"' . $val['login_state'] . '", sid:"' . session_id() . '", mid:"' . $val['login_datarow']['id'] . '"})';
main.php
- $var['sid'] = $_COOKIE['sid'];
- $var['mid'] = $_COOKIE['mid'];
-
- //设置session_id
- session_id($var['sid']);
- session_start();
-
- //获取用户SESSION内容
- $_SESSION["user_{$var['mid']}"]
作者: 13966837 发布时间: 2011-06-25
没看到哪里跨域了。
作者: cevin.zyc 发布时间: 2011-06-25
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28