java - springmvc 后台怎么Post一个请求
PHPz
PHPz 2017-04-18 09:44:26
0
4
399

如题,在后台代码进行重定向,发现请求是以GET方式从处理方法A到处理方法B的,但是处理方法B的@RequestMapping限定了只能接Post过来的请求,导致一直报HTTP405 ,错误的请求方式!
貌似return new RedirectView("/postMessage", true, false, false);这个也不行!

PHPz
PHPz

学习是最好的投资!

répondre à tous(4)
洪涛

Le guide d'étude Spring MVC P62-63 mentionne les attributs Flash, vous pouvez utiliser POST pour transmettre des valeurs lors de la redirection, le code du contrôleur est publié pour vous :

@RequestMapping(value = "/product_save", method = RequestMethod.POST)
    public String saveProduct(ProductForm productForm, RedirectAttributes redirectAttributes) {
        logger.info("saveProduct called");
        // no need to create and instantiate a ProductForm
        // create Product
        Product product = new Product();
        product.setName(productForm.getName());
        product.setDescription(productForm.getDescription());
        try {
            product.setPrice(Float.parseFloat(productForm.getPrice()));
        } catch (NumberFormatException e) {
        }

        // add product
        Product savedProduct = productService.add(product);
        
        redirectAttributes.addFlashAttribute("message", "The product was successfully added.");

        return "redirect:/product_view/" + savedProduct.getId();
    }
    

"Pour utiliser les attributs Flash, vous devez avoir un élément <annotation-driven/> dans le fichier de configuration Springmvc. Ensuite, vous devez également ajouter un nouveau paramètre de type org.springframework.web.servlet.mvc.support.RedirectAttributes sur la méthode"

PHPzhong

Je pense qu'il s'agit d'un problème de conception. Puisque vous avez décidé de rediriger, vous ne pouvez bien sûr pas utiliser la méthode post. Bien sûr, vous pouvez également utiliser httpclient et d'autres outils pour simuler des publications. en cours

刘奇

Je suis d'accord avec l'avis ci-dessus, il y a un problème de design.
Puisque vous avez besoin de vous rediriger vers le passé, pourquoi vous limiter à accepter uniquement les demandes d'obtention ?

Ty80

Votre approche est impossible. La redirection Spring ne prend pas en charge le changement de GET en POST

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal