我需要将数据发送到我的服务器,其内容类型为:
'Content-Type': 'application/x-www-form-urlencoded'
这是我从AngularJS客户端获得的数据:
user.loginData = {
userName: "joe@joe.com",
password: "smith++"
};
有人可以通过告诉我如何转换userName和密码来帮助我 将此数据以urlencoded格式发送到我的服务器:
data: 'grant_type=password&username=' + username + '&password=' + password,
答案 0 :(得分:1)
我找到了一个非常简单的解决方案:
encodeURIComponent(userName)
答案 1 :(得分:1)
This npm module 将对象转换为您想要的内容:
var formurlencoded = require('form-urlencoded');
var obj = {
str : 'val',
num : 0,
arr : [3, {prop : false}, 1, null, 6],
obj : {prop1 : null, prop2 : ['elem']}
};
console.log(formurlencoded(obj));
// str=val&num=0&arr%5B%5D=3&arr%5B%5D%5Bprop%5D=false&arr%
// 5B%5D=1&arr%5B%5D=null&arr%5B%5D=6&obj%5Bprop1%5D=null&o
// bj%5Bprop2%5D%5B%5D=elem
console.log(formurlencoded(obj, {
ignorenull : true,
sorted : true
}));
// arr%5B%5D=3&arr%5B%5D%5Bprop%5D=false&arr%5B%5D=1&arr%5B
// %5D=6&num=0&obj%5Bprop2%5D%5B%5D=elem&str=val
答案 2 :(得分:-2)
您可以使用以下行设置内容类型
query: {method:'POST', headers: {'Content-Type': 'application/x-www-form-urlencoded'}}
您可以在此处查看小提琴链接Link