Редагувати: Це, можливо, проблема з серверним API? Запити на дані, надіслані через $ .param, завжди є рядками, правильно? Тож їм потрібно проаналізувати ці речі на своєму бекенді?
Зараз я намагаюся надіслати запит на публікацію в API для реєстрації користувача. Однією з вимог є прийняття загальних положень та умов та вікових вимог, які, як вона очікує, логічні.
Я вважаю, що проблема може полягати в тому, що запит $ http надсилає STRING, а не логічне значення в серверну частину API, і тому він відхиляє його. Як я можу надіслати логічне значення через $ http?
var apiCall = {
method: "POST",
url: "API_URL",
data: $.param({
"user[email]": username,
"user[password]": password,
"user[password_confirmation]":password,
"profile[age_acceptance]": ageAcceptance,
"profile[terms_acceptance]": termsAcceptance
}),
headers: {
"Accept": "application/vnd.softswiss.v1+json",
"Content-Type": "application/x-www-form-urlencoded"
},
transformRequest: function(data, headersGetter, status) {
console.log(data);
console.log(headersGetter(data));
}
}
Відповіді:
0 для відповіді № 1var dataToPost = JSON.stringify( {
"user[email]": username,
"user[password]": password,
"user[password_confirmation]":password,
"profile[age_acceptance]": ageAcceptance,
"profile[terms_acceptance]": termsAcceptance
});
data: dataToPost,
headers: {.......,
.....
Ви повинні мати жорсткі параметри.
JSON.stringify(params)