我正在尝试将角度4应用中的地图数据发布到弹簧启动服务器,但它不起作用,有人可以帮忙吗?
服务 - >
getmapdata(): Observable<ITinyMCEData[]> {
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
let data = new Map<number, string>();
data.set(1, 'aa');
data.set(2, 'bb');
data.set(3, 'cc');
console.log('map value == ' + data.get(1));
return this._http.post(this._testmapurl, data, options)
.map((response: Response) => <ITinyMCEData[]> response.json())
.do(data => console.log(JSON.stringify(data)));
}
chrome浏览器未显示地图数据:
Request Payload
{}
No Properties
服务器获取空白数据:
@RequestMapping(value = "/testmap", method = RequestMethod.POST)
public ResponseEntity<User> getMapData(@RequestBody Map<Integer, String> data) {
System.out.println("Data = " + data); --> display blank
Iterator entries = data.entrySet().iterator();
while (entries.hasNext()) {
Map.Entry entry = (Map.Entry) entries.next();
Integer key = (Integer)entry.getKey();
Integer value = (Integer)entry.getValue();
System.out.println("Key == " + key + " value == + " + value);
}
User user = new User();
return new ResponseEntity<User>(user, HttpStatus.OK);
}
答案 0 :(得分:0)
我找到了解决问题的方法。地图类型仅在ES6中受支持,似乎我的浏览器不支持ES6。所以我将地图实现替换为 let map = {};然后填充值。 在服务器上,我创建了一个包含地图的类。