我正在使用Java servlet和AngularJs构建基于Web的应用程序。
以前,我只是使用$ http(以下代码),每件事都很好。
this.callWithParam = function(command) {
var deferred = $q.defer();
$http({
method: 'POST',
url: 'SearchServlet',
data: $.param({'data': JSON.stringify(command)}),
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
}).success(function(data) {
deferred.resolve(data);
}).error(function() {
deferred.reject('Error occur!');
});
return deferred.promise;
}
但是我想将它修改为$ resource,因为我发现它非常方便并且可以节省大量代码。所以我写下面的代码
search: function() {
return $resource('SearchServlet', {}, {
'searchA': {method: 'GET', headers:{'Content-Type': 'application/x-www-form-urlencoded'} },
'searchB': {method: 'GET', headers:{'Content-Type': 'application/x-www-form-urlencoded'} }
});
}
但是我发现标题未能添加到请求标题中,然后它有问题因为中文字符,所以servlet不能很好地接收中文单词。
因此,任何人都有想法解决这个问题?谢谢!