Что я делаю нетак с rest и пост запросом?

Настраиваю рест вот так
config
[
                    'class' => 'yii\rest\UrlRule',
                    'controller' => 'v1/bonus',
                    'extraPatterns' => [
                    'POST bonus'=>'get-bonus'
       ],
 ],

создаю в контролере BunusController экшен actionGetBonus вот контролер
public function actionGetBonus(){
        $request = Yii::$app->request->post();
        $user=User::findOne(['ref'=>$request['ref']]);
        return [
            'full_bonus'=>$user->user_bonus,
            'frozen'=>$user->frozen,
            'bonus'=>($user->user_bonus-$user->frozen)
        ];  
    }


вот acController

Вот что выдает постман
59d5cf1c38bb9129365957.jpeg
вот настроил запрос с помошью httpclient
$client = new Client();
            $response = $client->createRequest()
                ->setMethod('post')
                ->setUrl(\Yii::$app->params['bunusapi'])
                ->setData(['ref' => $userCode])
                ->send();
            if ($response->isOk) {
                $newUserId = $response->data['id'];
            }  else {
                return $response;
            }
        }

получаю такой ответ
object(yii\httpclient\Response)[181]
  public 'client' => 
   ...
      public 'contentLoggingMaxSize' => int 2000
 ...
  private '_content' (yii\httpclient\Message) => string '{
    "name": "Unauthorized",
    "message": "Your request was made with invalid credentials.",
    "code": 0,
    "status": 401,
    "type": "yii\\web\\UnauthorizedHttpException"
}' (length=181)
...

(все параметры с null и empty просто убрал. Что я делаю не так ?
  • Вопрос задан
  • 1808 просмотров
Решения вопроса 1
qonand
@qonand
Software Engineer
Проблема в том что Вы пытаетесь сделать запрос не авторизовавшись. Соответственно необходимо произвести процесс аутентификации
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы