我有一个像这样的复杂对象:
const webpack = require('webpack');
const path = require('path');
module.exports = {
mode: "development",
entry: ['./main.js', './app/DynClass.js'],
output: {
filename: 'main.js',
path: path.resolve(__dirname, "../client/")
},
resolve: {
alias: {
"/src": path.resolve(__dirname, '')
}
},
module: {
rules: [
{
test: /\.tpl$/i,
use: 'raw-loader',
},
]
}
};
我想调用一个接收所有复杂对象字段的Web服务:http://localhost:8080/api/some_service?a=something&b=something&...&z=something
是否可以将ComplexObject传递给RestTemplate并自动完成工作?还是我必须自己进行手动映射?
谢谢!
答案 0 :(得分:2)
是的!有一种方法可以传递完整的复杂对象进行服务调用,然后确保可以自动实现。 为此,您必须更改发送此complexObject的方式,并必须使用HTTP POST(强烈建议使用),例如:
public HttpStatus send()
{
ComplexObject complexObj = getYourFilledObject();
ResponseEntity<HttpStatus> response = restTemplate.postForEntity(ROOT_URI, complexObj, HttpStatus.class);
return response;
}
如果不是,并且GET是唯一的选择,那么很遗憾,您必须按原样发送。因为在一天结束时,要么使用REST模板的功能来获取参数,要么使用参数创建您自己的URI,因此它是相同的HTTP GET,因此您必须通过编程来实现。
有关示例和插图,您可以访问here,最佳参考将是Spring resttemplate文档