rob006/yii2-simple-auth-yii-authenticator

Yii 2 扩展,提供来自yii2-httpclient包的认证请求的辅助工具。

1.0.1 2017-04-06 19:24 UTC

This package is auto-updated.

Last update: 2024-09-04 23:02:32 UTC


README

Yii 2 扩展,提供来自 yii2-httpclient 包的认证 Request 的辅助工具。

这是为 yii2-simple-auth 提供的一个简单辅助工具,简化了从官方 Yii 2 httpclient 扩展中认证 Request 对象的过程。阅读 yii2-simple-auth README 获取关于认证过程和配置的更多详细信息。

安装

安装此扩展的首选方式是通过 composer

运行以下命令:

php composer.phar require rob006/yii2-simple-auth-yii-authenticator

或者将以下内容添加到你的 composer.json 文件中的 require 部分:

"rob006/yii2-simple-auth-yii-authenticator": "^1.0"

使用方法

你可以通过使用 YiiAuthenticator 辅助工具简单地认证来自官方 Yii 2 httpclientRequest 对象。

use yii\httpclient\Client;
use rob006\simpleauth\YiiAuthenticator as Authenticator;

$client = new Client();
$request = $client->createRequest()
	->setUrl('http://api.example.com/user/list/')
	->setData(['ids' => '1,2,3,4']);
$request = Authenticator::authenticate($request);
$response = $request->send();

默认情况下,Authenticator 在请求头中发送认证令牌。你也可以选择将其发送在请求的 GET 或 POST 参数中。使用 POST 方法时请注意,这会将请求方法设置为 POST,所有通过 \yii\httpclient\Request::setData() 设置的数据都将作为 POST 数据发送,并且不会包含在 URL 中。

使用自定义密钥的 GET 参数进行认证

use yii\httpclient\Client;
use rob006\simpleauth\YiiAuthenticator as Authenticator;

$client = new Client();
$request = $client->createRequest()
	->setUrl('http://api.example.com/user/list/')
	->setData(['ids' => '1,2,3,4']);
$request = Authenticator::authenticate($request, Authenticator::METHOD_GET, 'mycustomsecretkey');
$response = $request->send();

使用 POST 参数进行认证

use yii\httpclient\Client;
use rob006\simpleauth\YiiAuthenticator as Authenticator;

$client = new Client();
$request = $client->createRequest()
	->setUrl('http://api.example.com/user/list/?ids=1,2,3,4');
$request = Authenticator::authenticate($request, Authenticator::METHOD_POST);
$response = $request->send();