Я новичок в понимании языков программирования и начал изучать вещи с помощью wordpress. Я пытаюсь интегрировать платежный шлюз и могу сгенерировать access_token и refresh_token, которые мне нужно сохранить в моей базе данных для дальнейших вызовов API для платежей и обновления данных пользователя.
Ниже приведен мой код для создания токенов. Пожалуйста, помогите, как сохранить значения токенов в базе данных. Я попытался воспроизвести код регистра WordPress для вставки значений, но не удалось.
<?php
session_start();
include_once "page-signup.php";
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://test.instamojo.com/oauth2/token/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS =>
"client_id=gC4z8rBV55SDiavZobpvZCcanwK3mbnY
&client_secret=dYFbCXaX9WUy1c3kkCXV8JRJkTxmLcxCXwncVKWlWsh8c0QOI
5Uz30PCzOieC879RT7PLsEwrRKZDvZXqYpF5fZiE2Z62z3dly7p7ZUbGHTmOWmBsh3
&grant_type=password
&username=$username
&password=$password",
CURLOPT_HTTPHEADER => array(
"Cache-Control: no-cache",
"Content-Type: application/x-www-form-urlencoded",
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
$json_decode=json_decode($response,true);
$refresh_token=$json_decode['refresh_token'];
$access_token=$json_decode['access_token'];
}
echo $response;
?>
да, Стефано. он генерирует токен, как вы упомянули, и ответ добавлен здесь ниже для вашей справки. {"access_token": "t1Hah9VSyRhUYoi4HQwNvWgAo3NrmQ", "expires_in": 36000, "token_type": "Bearer", "scope": "читать, писать выплаты: читать платежи: читать платежи: выполнять платежи: возмещать", "refresh_tokenz": "ajNhGiTYF "} и мне нужно использовать токены позже, извлекая их из базы данных. Я тоже пытаюсь понять, как восстановить. Я создал два поля для вышеуказанного в таблице wp_user .... не слишком уверен, прав ли я






Вероятно, лучший способ сохранить и получить эту информацию из wordpress db - использовать API опций: с помощью только одной команды, которую вы можете сохранить, получить и удалить токен. Обычно параметры wordpress используют нормализованный массив, но вы также можете хранить непосредственно токен json или просто строку.
Спасибо Стефано за информацию. Однако мне нужно глубже копнуть и понять упомянутые концепции, поскольку у меня нет знаний об их использовании.
Это очень просто: просто add_option ($ option, $ value); delete_option (опция $); get_option ($ option);
Спасибо, Стефано, попробую. На самом деле я попытался поместить всю строку в functions.php дочерней темы ... возможно, причина, по которой это не сработало, или в том, что мне нужно разместить строку в приведенном выше коде ...?
Я попытался добавить строки в код, но не смог определить значения в базе данных. может быть, я не ввожу правильное название опции ...
Спасибо Стефано, я смог получить access_token, хранящийся в базе данных, используя имя пользователя в качестве опции. Я добавил две строки, вторую для токена обновления, но не смог найти значения в базе данных .... каков правильный формат для хранения значения refresh_token (я имею в виду несколько значений параметров)
Привет, Стефано, я мог бы хранить access_token и refresh_token, используя разные имена параметров. Попытка понять, будут ли сохраненные access_token и refresh_token применяться к соответствующему пользователю, когда мы используем get_option при обновлении данных пользователя и создании ссылки для оплаты .... будет ли идентификатор, сгенерированный во время регистрации, работать как идентификатор ...?
Параметр хранится под своим именем и не зависит от пользователя; вы можете использовать имя пользователя для создания имени опции, если хотите получить значение, зависящее от пользователя. (Не знайте, если этот ответ на ваш вопрос ... Надеюсь, что да)
Истинный Стефано, я хочу получить пользовательские значения, пока я делаю запрос на обновление пользовательских данных / создание платежной ссылки. Можно ли это сделать, и если да, то какой код мне нужно использовать. а также то, что я не могу сохранить два значения с одним и тем же параметром имени пользователя для имени параметра ... есть ли способ сделать это, а также то, что этот процесс запускается после того, как пользователь зарегистрирован и вошел в систему ... поэтому я думаю, имя пользователя или идентификатор пользователя могут быть выровнены со значением ... но не знаю, как это сделать ... пожалуйста, помогите.
Не могли бы вы уточнить меня: опубликованный вами код возвращает значение json, например {token: this_is_your_token}, и вы хотите сохранить this_is_your_token в базе данных wordpress для использования позже?