Что я делаю нетак с 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 просто убрал. Что я делаю не так ?
  • Вопрос задан
  • 1688 просмотров
Решения вопроса 1
qonand
@qonand
Software Engineer
Проблема в том что Вы пытаетесь сделать запрос не авторизовавшись. Соответственно необходимо произвести процесс аутентификации
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы