отправить форм-данные в виде json в приложение angularjs - PullRequest
0 голосов
/ 22 января 2019

Есть веб-страница, построенная на AngularJS с логином.

Мне нужно добавить его на мою страницу и авторизовать своих пользователей на сайте. при просмотре сайта angularJS процедура входа ожидает объект json.

Я пробовал несколько способов. Отправка массива, создание объекта json в js и отправка его. Но ничего не работает.

JSON должен выглядеть так:

{
  'TAKE':{
        'username': 'whatever',
        'password': 'whatever'
    }
}

Самое близкое решение, которое у меня было, - создать json через js и отправить его с формой. Проблема заключалась в том, что в запросе символы типа {} и '"были закодированы как:

%22%3A%7B%22

JS, который я использовал:

function submitAsJSON(form) {

    var json = "{'TAKE':{'username': 'whatever','password': 'whatever'}}";
    var JSONString = JSON.stringify(json);

    var newForm = "<form method='POST'  action='" + $(form).attr('action') + "'>" +
    "<input name='" + JSONString + "'>" +
    "</form>"
    $(newForm).appendTo('body').submit();
   }

также смотрит на заголовки в chrome, его ждет:

content-type: application/json

но я отправляю:

Content-Type: application/xml;

Как я могу отправить JSON и позволить пользователю автоматически войти в систему?

1 Ответ

0 голосов
/ 22 января 2019

Проверьте, работает ли это для вас, чтобы преобразовать данные формы в JSON.
Для аутологина вам придется обрабатывать это на стороне подачи:

var formData = JSON.stringify($("#theFormID").serializeArray());

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