Как сгенерировать токен для вызова покоя в codeigniter? - PullRequest
0 голосов
/ 12 мая 2019

Мне нужно вызвать функцию API остальных в проекте codeigniter.Данные возвращаются с вызова API, используя Почтальон.В Postman сначала я генерирую токен и помещаю этот сгенерированный токен в вызов rest.Я должен сделать тот же процесс в codeigniter.Сначала я должен сгенерировать токен и передать этот токен во второй вызов API, чтобы получить желаемый результат.

Код моего контроллера:

public function getToken()
{
        $url='http://localhost:8080/myapplication/rest/api/validate-request';
        $key=$this->get_data($url);
}
public function get_data($url)
{

    //create a new cURL resource
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");   
    //curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
    curl_setopt($ch, CURLOPT_USERPWD, R_U_NAME.':'.R_U_PWD);
    $result = curl_exec($ch);
    $result = json_decode($result);
    //var_dump($result);
    //close cURL resource
    curl_close($ch);


}

Здесь var_dump ($ result) возвращает нулевое значение.

1 Ответ

1 голос
/ 16 мая 2019

Мне не нужно было передавать имя пользователя и пароль для аутентификации. Вместо этого мне приходилось публиковать имя пользователя и пароль почтальона в моей функции. Теперь я получаю жетон от почтальона.

private function get_data($url)
    {   
        $member_data = array(
            'username' => R_U_NAME,
            'password' => R_U_PWD
        );
        //create a new cURL resource
        $ch = curl_init($url);

        curl_setopt($ch, CURLOPT_TIMEOUT, 30);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
        curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);

        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $member_data);

        $result = curl_exec($ch);

        curl_close($ch);

        return $result;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...