我有一些代码可以使用Spring MVC项目生成加密货币钱包。明确使用Spring MVC中的POST请求值
@RequestMapping(value = "/generateAddress", method = RequestMethod.POST)
public ResponseEntity<WalletInfoWrapper> generateAddress(@RequestParam("walletName") String walletName,
@RequestParam("currencyName") String currencyName, HttpServletRequest request) {
String wallet_Name = request.getParameter("walletName");
String currency_Name = request.getParameter("currencyname");
System.out.println("wallet_Name = " + wallet_Name + " , currency_Name = " + currency_Name);
// return if the wallet name or the currency is null
if (Objects.isNull(wallet_Name) || Objects.isNull(currency_Name)) {
return new ResponseEntity<WalletInfoWrapper>(HttpStatus.NOT_ACCEPTABLE);
}
WalletInfo walletInfo = walletService.generateAddress(wallet_Name);
if (Objects.isNull(walletInfo)) {
return new ResponseEntity<WalletInfoWrapper>(HttpStatus.NOT_ACCEPTABLE);
}
WalletInfoWrapper walletInfoWrapper = new WalletInfoWrapper();
walletInfoWrapper.setName(walletInfo.getName());
return new ResponseEntity<WalletInfoWrapper>(walletInfoWrapper, HttpStatus.CREATED);
}
现在,我使这个POST
请求,
curl -X POST -d "walletName=zyx¤cyName=bitcoin" http://localhost:8080/rest/generateAddress
我想具有wallet_Name
和currency_Name
分离并作为代码提供打印。但是,在发出POST
请求之后,我在控制台中看不到任何东西。
String wallet_Name = request.getParameter("walletName");
String currency_Name = request.getParameter("currencyname");
System.out.println("wallet_Name = " + wallet_Name + " , currency_Name = " + currency_Name);
我也试图POST
使用数据的JSON
格式,我没有得到任何改变。这里有什么问题?
请写下我downvote的原因,我将修改/删除的问题。我有些困惑,不得不再次提问。顺便说一句,我已经删除了上一个问题。 – Arefe
你的方法是一个POST,你的'curl'是一个POST,但你说的是'GET' - 我很困惑 - 还要注意你的参数并且作为@RequestParam(“walletName”)传递了字符串walletName,''参数到你的方法 –
@ScaryWombat这个问题的确是关于'POST',它应该创建名称和地址的钱包。我使用'GET'来检查'POST'后创建的值。我应该注意哪些参数?如果出现错误,请将其写为答案。 – Arefe