php对接登陆的三两片语

$client_id=‘‘;
$sign_method=‘MD5‘;
$version=‘1.0‘;
$timestamp=time();//时间戳
$client_secret=‘‘;//客户证明
$code = $_GET[‘code‘];
$grant_type = ‘authorization_code‘;
$sign_sort = ‘client_id&sign_method&version&timestamp&client_secret&code&grant_type‘;
$signature = md5($client_id.$sign_method.$version.$timestamp.$client_secret.$code.$grant_type);//md5简要加密

$data = array(
  ‘client_id‘=>$client_id,
  ‘sign_method‘=>$sign_method,
  ‘version‘=>$version,
  ‘timestamp‘=>$timestamp,
  ‘client_secret‘=>$client_secret,
  ‘code‘=>$code,
  ‘grant_type‘=>$grant_type,
  ‘sign_sort‘=>$sign_sort,
  ‘signature‘=>$signature
  );

$urlencodeData = http_build_query($data);//array转urlencode

$url =‘‘;//code换token的地址
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_HTTPHEADER,array(‘Content-Type:application/x-www-form-urlencoded‘));//https、tttp请求头设置,视情况而定

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);//是否对认证证书来源的检查
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);//以文件流输出执行结果
//将服务器服务器返回的"Location: "放在header中递归的返回给服务器,使用CURLOPT_MAXREDIRS可以限定递归返回的数量。视情况而定
//curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$urlencodeData);
$json = curl_exec($ch);
curl_close($ch);

$arr = json_decode($json);

拿到你要的token。

重点注意:对于不同的接入,每个接入的加密和获取token请求的方式有所不同。

时间: 2024-12-18 13:56:53

php对接登陆的三两片语的相关文章

5.C#WinForm基础登陆失败三次退出系统

目标: 登陆界面,登陆错误三次退出程序.假设用户名密码是admin.888888,不区分大小写,(易错点:局部变量与类变量) 局部变量每次运行完毕变量的值都会被销毁,下次再运行,会重新初始化.       而类字段,只要是一个对象,那么只要对象不销毁,就会一直保持对象的字段值. 退出程序:this.close();或者Application.Exit(); 文本框的集中模式:Mutiline(多行).PasswordChar(密码) string Datatime().ToString()(+3

外网登陆SAP的两种方式

1.用SAP router实现从外网登录SAP服务器(方式一) 自已搭建的局域网结构如下: SAP服务器IP: 192.168.0.2, 路由器中设为DMZ区 在SAP服务器上启用SAP router,即可 SAP router的搭建非常简单: 1.找到SAP的安装目录(例如D:\usr\sap\ECC\DVEBMGS00\exe\),可以看到saprouter.exe文件 2. 用记事本建立一个名为SAPROUTTAB的文件(没有扩展名), 输入 P * * * 后保存 3.打开c:\syst

“RFID 破解三两事”讨论总结

昨晚睡了一晚上的火车,刚到家,还没有洗脸,看看文章的访问量及评论都太多,radiowar在我文章评论及他的那篇评论文章里,提到菜鸟,小白,以及我的文章内容错误,误导大家等,看了这些,我觉得不得不站出来澄清一下,我在想如果文章内容错误,那么文章就必须要删除,所以我仔细的看了我的文章,仍然没有发现大的问题. 我仔细看了radiowar的那篇评论文章,主要还是考虑问题的方向不一样,或者说radiowar没有仔细看我想表达的意思,本来想直接回复,最后回复内容太多,所以就整理成一篇文章进行回应一下: 1:

iad 集成三两事

1. 好像是随着ios8的beta开始.  iad 已经发生了一些变化. 比如找不到enable iad network 的按钮了. 貌似是不需要手动去 enable 了. 只需要嵌入 iad framework 就可以了. 2. 如何测试iad是否集成好了呢?  自己测试请求操作 是否显示测试广告. 3. 目前的新上线了一个. 还没看到数据. iad workbench 那里也没有这个app激活. 不知道是什么状况. iad 集成三两事

小作业(用户登陆(三次机会重试))

用户登陆(三次机会重试) #print("请输入账号:%s\n 请输入密码:%s"%(inp_id,inp_pwd)) a = "2260683aaa" #这里简单了内置了一下用户名 b = "1234aaa" #这里是内置的密码..从简版...主要是读写操作不熟练 valid_flag = False #这里是立了福来阁,显得正规 for i in range(3): inp_id = input("请输入账号:") inp

Linux ssh登陆慢的两种原因分析

Linux ssh登陆慢的两种原因分析 如果做运维就一定会遇到ssh登陆Linux服务器慢的问题,问题比较好解决,一般Google之后有很多文章都告诉你解决方法,但是很少有文章分析为什么会慢,这篇文章简单分析下ssh登陆慢的原因. useDNS配置导致登陆慢 如果ssh server的配置文件(通常是 /etc/ssh/sshd_config )中设置 useDNS yes ,可能会导致 ssh 登陆卡住几十秒.按照网上的方法将该配置项设为 no,然后重启 ssh 服务,再次登陆就恢复正常,但至

#用户登陆(三次输错机会)且每次误时显示剩余错误次数(提示:使用字符串格式化)

#用户登陆(三次输错机会)且每次误时显示剩余错误次数(提示:使?字符串格式化) # i = 3 # username = "yangxiaoer" # password = "123456" # while i>=0: # name = input("请输入你的用户名:") # if name == username: # passwd = input("请输入你的密码:") # if passwd == passwor

Cetos7安装nginx三两事

Nginx安装 阿里云cetos7已经默认添加了nginx的yum源,可以通过yum search nginx确认. 如果没有,则可以通过运行rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm进行添加. 命令 123 systemctl start nginx.service # 启动nginx服务 systemctl stop nginx.serv

linux忘记登陆密码的两种破解办法

对于使用grub引导的linux系统.在开机自检后,出现grub引导界面时,按E键进入编辑模式,如下图所示:   把光标移到带有"kernel"字样的那一行,然后按E键编辑,如图:   在末尾按一个空格,输入数字1,再按回车键回到之前的界面.该行的意思是加载内核,末尾的参数1,该命令不能识别,所以它会将这个参数1传递给系统启动后的第一个进程,而系统启动的第一个进程是init,init 1 就是进入单用户模式.如图:   按B键启动系统,启动完成后.注意看,提示符是井号,表示现在已经是r