Angularjs не разрешает использовать квадратные скобки в параметре url - '['

0

Я хочу вызвать и внешний api

Он работает нормально, если у меня есть параметры, подобные этому

$http.post('http://api.myprivatebox.com/users.json', { email : email, password : password}).then(function (results) 
 {
    console.log('mid');
 });

Но когда я использую параметр, например user[token]

Он показывает мне Uncaught SyntaxError: Unexpected token [ Ошибка

Итак, как я могу отправить параметры с помощью [ квадратных скобок

Как это

$http.post('http://api.myprivatebox.com/users.json', { email : email, password : password, user[token] : token}).then(function (results) 
 {
    console.log('mid');
 });
Теги:
angularjs-http

2 ответа

0
Лучший ответ

Вы можете установить ключ с помощью индексной нотации массива, так как вы хотите динамически установить user['token']

Код

var formData = { email : email, password : password};

formData[user['token']] = token; //assuming user & token object has already defined

//user[token] : token

$http.post('http://api.myprivatebox.com/users.json', formData).then(function(results) {
    console.log('mid');
});
  • 0
    Получение ReferenceError: user is not defined
  • 0
    @CableRaja, поэтому я сказал, что вы должны определить пользовательское значение, прежде чем использовать там ..
Показать ещё 4 комментария
0

user[token] не является действительным ключом. Вы должны обернуть его в кавычки!

Попробуйте "user[token]"

Ещё вопросы

Сообщество Overcoder
Наверх
Меню