Как создать пользователя с помощью нового JSON API в WordPress 4.7?

21 апр. 2017 г., 22:59:37
Просмотры: 23.5K
Голосов: 5

Раньше я использовал плагины JSON API и JSON USER API до версии 4.7, и я видел документацию в справочнике REST API User, https://developer.wordpress.org/rest-api/reference/users/#create-a-user%20%22ReST%20API%20reference, но не знаю, с чего начать. Я уверен, что сначала должна произойти процедура аутентификации для получения nonce, но я больше не знаю, как это сделать. Я был бы очень признателен, если бы кто-нибудь показал мне или указал на примеры cURL-запросов и URI как для получения nonce, так и для создания пользователя.

Заранее спасибо

0
Все ответы на вопрос 2
0

REST API, встроенный в WordPress, на самом деле не имеет встроенной системы аутентификации.

Если вы выполняете обычную аутентификацию в WordPress через вход в систему, ваш браузер получит набор cookies. Если вы отправите эти cookies вместе с запросом, это позволит вам аутентифицироваться и выполнить необходимые действия.

Если вам нужно добавить аутентификацию для внешнего сервиса, необходимо установить соответствующий плагин. Доступно несколько вариантов:

Если вы просто тестируете локально, также доступен плагин Basic Authentication, который позволяет отправлять имя пользователя и пароль с каждым запросом в заголовке Authorization:

В любом случае, как только вы получите правильные cookies или включите метод аутентификации, создание нового пользователя становится простым. Отправьте POST-запрос на /wp-json/wp/v2/users с указанием имени пользователя, email и пароля в теле запроса.

Документацию можно найти здесь:

https://developer.wordpress.org/rest-api/using-the-rest-api/

https://developer.wordpress.org/rest-api/using-the-rest-api/authentication/

21 апр. 2017 г. 23:52:32
1

Для того чтобы «Зарегистрировать пользователя» или «Восстановить пароль», требуется аутентификация пользователя с ролью «Администратор». Хотя это сделано преднамеренно в целях безопасности, такая реализация значительно усложняет для Front End приложений возможность реализации простых функций «Регистрации» или «Входа».

Простое решение — использовать плагин wp-rest-user. Этот плагин удовлетворяет таким требованиям, расширяя существующие конечные точки WordPress REST API.

ИСПОЛЬЗОВАНИЕ

Отправьте POST-запрос на /wp-json/wp-v2/users/register, включив JSON-тело с тремя ключами: username, email и password.

Отправьте POST-запрос на /wp-json/wp-v2/users/lostpassword, включив JSON-тело с одним ключом: user_login.

Вы можете использовать Postman, как показано на изображении ниже: Пример запроса в Postman

Или даже AJAX-запрос, как в следующем коде:

<script>
    function addUserData(){
            $.ajax( {
            url: 'http://localhost/lapaktrip/wp-json/wp/v2/users/register',
            method: 'POST', 
            contentType: "application/json; charset=utf-8",  
            dataType: "json", 
            data:JSON.stringify({
                'username' : 'testmember',
                'email' : 'testmember@gmail.com',
                'password' : '123456'
            })
        } ).done( function ( response ) {
            console.log( response );
        } )
    }           
</script>
<button onclick="addUserData()">Начать отправку</button>

Надеюсь, этот ответ поможет многим. Удачного кодинга!

13 дек. 2018 г. 17:25:14
Комментарии

Этот плагин был закрыт 13 июля 2021 года и недоступен для скачивания. Причина: Нарушение правил.

Seano Seano
18 июн. 2023 г. 15:15:56