后台方法:ios
@PUT @Consumes(MediaType.APPLICATION_FORM_URLENCODED) @Produces(MediaType.APPLICATION_JSON) public ResultBean<?> updateByPrimaryKeySelective(@BeanParam Factory factory){ return factoryService.updateByPrimaryKeySelective(factory); }
能够看到后台consumes,APPLICATION_FORM_URLENCODED类型的请求。若是采用axios默认的put请求方式,会报404由于不符合后台方法的调用规则(spring没法对应到相应的方法)。spring
注意后台参数使用了:@BeanParam。这要示MediaType必须为APPLICATION_FORM_URLENCODED。axios
而前台若是使用data:{}这种方式传参,虽然能调用方法可是没法获取参数:后端
解决方法url
一、前台改成发送:io
经过这一段可将参数转化为url参数,从面符合后端要求。后台
二、还能够经过JSON实现 (这里以POST为例)。date