我正在尝试使用angularjs POST(或甚至GET)来使用以下内容:
var json = { hello: "world" }
var deffered = $q.defer();
$http({
method: "POST",
url: url,
headers: { "Content-Type" : "application/json" },
request: JSON.stringify(json)
}).then(data) {
if(data.data) {
deferred.resolve({
response : data
});
)
})
return deffered.promise;
在servlet中,简单:
String val = request.getParameter("request")
它似乎永远不会看到它
我试过了:
data: JSON.stringify({ request: json })
data: { request: json }
"request" : JSON.stringify(json)
等
如果我注释掉getParameter并使用Gson返回一个通用值
JsonObject json = new JsonObject();
json.addProperty("This", "works");
response.getWriter().print(new Gson().toJson(json));
回来很好所以在角度POST中有什么我在这里做错了吗?我也尝试过使用" GET"相反,但结果相同。
编辑:我想了解POST方法和"正确的"如果getParameter错误请从json对象获取数据的方法请答案 0 :(得分:-1)
getParameter()
返回http请求参数,您应该使用以下命令添加此参数:
params: JSON.stringify(json)
不是
request: JSON.stringify(json)