CURL 调用登录接口并且携带Token
curl页面:
<?php namespace frontend\controllers;
use yii\base\Controller;
use Yii;
class NewController extends Controller{ public $result=array(
'code'=>0,
'data'=>'',
'error'=>''
);
public function actionIndex(){
$user=Yii::$app->request->get('user');//获取用户名
$pwd=Yii::$app->request->get('pwd');//获取密码
$token=file_get_contents('./user.txt');//生成token
if(empty($user)){
return 1004;
}
if(empty($pwd)){
return 1005;
}
$url='http://www.xyii.com/v1/new/login';//登录接口地址
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,TRUE);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE);
curl_setopt($ch, CURLOPT_USERPWD, 'username' . ":" . 'password');//出现身份认证问题时加入
curl_setopt($ch,CURLOPT_HEADER,FALSE);
curl_setopt($ch,CURLOPT_POSTFIELDS,array('user'=>$user,'pwd'=>$pwd,'token'=>$token));
$data=curl_exec($ch);
curl_close($ch);
$data=json_decode($data);
$this->result['data']=$data;
return json_encode($this->result);
}
}
//登录接口 控制器层
$user=Yii::$app->request->post('user');
$pwd=Yii::$app->request->post('pwd');
$id=Yii::$app->request->post('id');
$token=Yii::$app->request->post('token');
if($id<1){
return 1000;
}
if(empty($user)){
return 1001;
}
if(empty($pwd)){
return 1002;
}
if(empty($token)){
return 1003;
}
$params=array(
'user'=>$user,
'pwd'=>$pwd
);
$rows=User::getOne($id);
$this->result['data']=$rows;
return $this->result;
//模型层
public static $_tbl='user';
public static function getOne($id){
$db=Yii::$app->db->createCommand("SELECT `id`,`user`,`pwd` FROM".self::$_tbl);
$query=$db->bindValue('id',$id)->queryOne();
if(is_array($query)){
return $query;
}
return array();
}
CURL 调用登录接口并且携带Token的更多相关文章
- Python接口测试中通过登录接口获取实时token
1.封装login_token 2.headers:对应登录请求头部信息 3.request_param:登录的参数数据 4.json.dumps:将一个Python数据结构转换为JSON 5.dic ...
- Python+request 登录接口reponse中token传递给其他接口使用,小示例介绍《一》
要求: 1.调用登录login 2.调用通过登录接口返回的reponse中的token和uuid,实现test_create_todo接口的测试 实现: 1.login登录接口的调用,直接填写对应的U ...
- Yii2通过curl调用json-rpc接口
Yii2可以通过json-rpc为前端提供接口数据,通常情况睛会使用异步的形式调用接口,有时也会使用curl调用接口数据. 一.异步调用json-rpc接口 $.ajax({ type: 'POST' ...
- php通过curl调用jpush接口实现消息的推送
public function actionNotifyto() { //$regid = $_REQUEST['regid']; $url = 'https://api.jpush.cn/v3/pu ...
- 用curl调用https接口
今天在windows下用curl类获取微信token一直返回false,查阅资料后,发现是https证书的锅,在curl类中加上这两条,问题瞬间解决. curl_setopt($ch, CURLOPT ...
- python+pytest接口自动化(13)-token关联登录
在PC端登录公司的后台管理系统或在手机上登录某个APP时,经常会发现登录成功后,返回参数中会包含token,它的值为一段较长的字符串,而后续去请求的请求头中都需要带上这个token作为参数,否则就提示 ...
- Spring Boot web API接口设计之token、timestamp、sign
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/vbirdbest/article/details/80789817一:token 简介Token:访 ...
- Java生鲜电商平台-API接口设计之token、timestamp、sign 具体设计与实现
转载:https://www.cnblogs.com/jurendage/p/12653865.html 说明:在实际的业务中,难免会跟第三方系统进行数据的交互与传递,那么如何保证数据在传输过程中的安 ...
- Java生鲜电商平台-API接口设计之token、timestamp、sign 具体架构与实现(APP/小程序,传输安全)
Java生鲜电商平台-API接口设计之token.timestamp.sign 具体设计与实现 说明:在实际的业务中,难免会跟第三方系统进行数据的交互与传递,那么如何保证数据在传输过程中的安全呢(防窃 ...
随机推荐
- Linux下Solr单机版、集群版安装与配置
一.安装 1.需要的安装包有apache-tomcat-7.0.47.tar.gz.solr-4.10.3.tgz.tgz(jdk自行安装) 这里默认大家已经安装好jdk与tomcat,所以在这里不做 ...
- C语言中tm结构体
struct tm { int tm_sec; /* Seconds. [0-60] (1 leap second) */ int tm_min; /* Minutes. [0-59] */ int ...
- bootstrap 下拉菜单自动向上向下弹起
.别人的解决方案 2.别人的解决方案 3.我哒 div class="btn-group" style="margin-top:500px;" > < ...
- 使用jfreechart生成柱状图、折线图、和饼状图
JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计.下面我就详细介绍如 ...
- React 添加对 Less 的支持, 使用 create-react-app 脚手架
---恢复内容开始--- 参考博客与我自己的当前版本有一点出入, 所以就将 参考博客写到文章后面去了. 我的电脑: 系统: Ubuntu16.04, 1, 安装脚手架: create-react-a ...
- windows----------如何修改windows服务器远程端口
远程连接并登录到 Windows 实例. 选择开始 > 运行,输入 regedit 打开注册表编辑器. 查找 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSe ...
- Python之包管理
1.setup.py from distutils.core import setup setup(name='Distutils', version='1.0', description='Pyth ...
- JavaScript 声明提前机制
声明提前机制 在JavaScript存在着这样一种预处理机制,即浏览器在解析JS代码时会将var声明的变量和function声明的函数提升到当前作用域的顶部.但是解析JS代码时对var和functio ...
- Bamboo基础概念
1.project 1)提供报告.展板.连接 |——2.plan 1)指定默认代码仓库(同一个仓库) 2)构建触发条件的配置 3)构建结果的发送与通知 ...
- vue移动端金融UI组件库滴滴MandMobile面向金融场景设计附功能思维导图
vue移动端金融UI组件库滴滴MandMobile面向金融场景设计附功能思维导图 Mand Mobile是面向金融场景设计的移动端组件库,基于Vue.js实现.目前已实际应用于滴滴四大金融业务板块的1 ...