私は私のAPIをテストするために郵便配達を使用していないんだけど、すべての要求が無効な資格情報を要求しているYii2休憩API基本認証の無効な資格
を言っているよう何らかの理由でそれはもはや機能します。
デバッガで、Authorization
要求ヘッダーが表示されないことがわかりました。私は郵便配達員に他のヘッダーを追加してテストしましたが、それらは表示されます。
私はcommon\models\User
にアクセストークンで検索するユーザモデルの設定があります。
public static function findIdentityByAccessToken($token, $type = null)
{
return static::findOne(['access_token' => $token]);
}
をそして、私は、コントローラの私の行動機能でこれを持っている:ここでは
public function behaviors()
{
$behaviors = parent::behaviors();
$behaviors['authenticator'] = [
'class' => HttpBasicAuth::className(),
];
$behaviors['access'] = [
'class' => AccessControl::className(),
'rules' => [
[
'allow' => true,
'roles' => ['@'],
'verbs' => ['GET'],
],
],
];
return $behaviors;
}
はのコンポーネントセクションです私のmain.phpファイル:
'components' => [
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => false,
],
'log' => [
'targets' => [
[
'class' => 'yii\log\DbTarget',
'levels' => ['error', 'warning'],
],
],
],
'urlManager' => [
'enablePrettyUrl' => true,
'enableStrictParsing' => true,
'showScriptName' => false,
'rules' => [
'v1/login' => 'v1/login',
['class' => 'yii\rest\UrlRule', 'controller' => ['v1/user']],
['class' => 'yii\rest\UrlRule', 'controller' => ['v1/userinfo']],
'v1/<controller>/<action>' => 'v1/<controller>/<action>',
],
],
'request' => [
'parsers' => [
'application/json' => 'yii\web\JsonParser',
]
]
],
私はリクエストに合格しますが、それを渡すために必要なコードには何かがありますか? –