Вход в Drupal через сервер Rest - PullRequest
       17

Вход в Drupal через сервер Rest

6 голосов
/ 16 декабря 2011

Я разрабатываю веб-сайт, который использует внешний Drupal для статей и страниц. Цель состоит в том, чтобы показать статьи на веб-сайте, используя только html / css / js.

Я добавил модуль Rest Server в серверную часть drupal, чтобы я мог выполнять http-запросы для получения статей. Теперь получение статей из серверных работ drupal (см. Код ниже). Restdrupal - это имя моего сайта, а restendpoint - это имя конечной точки сервера отдыха (Captian Obvious)

$.ajax({
    url : "http://127.0.0.1/restdrupal/restendpoint/node.json",
    dataType : 'json',
    success : function(data) {
              //further code
    }
});

Теперь я хочу, чтобы мой клиент мог добавить некоторые статьи, поэтому мне нужно сначала войти в систему. Я искал в Интернете уже несколько дней и пробовал миллион вещей, но у меня ничего не получалось. Последнее, что я попробовал (с помощью jQuery), было следующее:

$.ajax({
    url : "http://127.0.0.1/restdrupal/restendpoint/user/login",
    dataType:'application/json',
    type : 'PUT',
    data : 'Name=myusername&Pass=mypassword',
    success : function(data) {
        //further code
    },
    error:function(data){
           //Error handling
    }
});

Я также изменил PUT на POST ...

Ответ, который я получаю (не важно, что я делаю), тот же:

406 Not Acceptable: Unsupported request content type application/x-www-form-urlencoded

Может кто-нибудь помочь мне? С уважением, Ceetn

Ответы [ 3 ]

24 голосов
/ 13 февраля 2012

Необходимо включить тип содержимого application / x-www-form-urlencoded для конечной точки вашей службы.

Выполните следующие действия: Службы -> Изменить ресурсы -> выберите вкладку «Сервер» -> Включить »приложение./ x-www-form-urlencoded "и все

2 голосов
/ 20 декабря 2011

Нашел решение сам. Для тех, кому интересно:

$.ajax({
    url : "http://127.0.0.1/restdrupal/restpoint/user/login.json",
    type : 'post',
    data : 'username=' + encodeURIComponent(username) + '&password=' + encodeURIComponent(password),
    dataType : 'json',
    error : function(data) {
            //error code
    },
    success : function(data) {
        //success code
    }
});
1 голос
/ 16 декабря 2011

может потребоваться включить этот тип парсера?

проверить эту ссылку.может быть, это поможет вам получить некоторые идеи https://drupal.stackexchange.com/questions/3207/simple-rest-request-to-create-nodes

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