2016-11-26 1 views
0

Étrange problème que le repos de ressort ne renvoie aucune réponse. J'ai essayé d'utiliser le démarrage de printemps avec l'annotation @RestController.réponse non retour à l'aide des annotations de repos de ressort

Selon docs, il comprend @ResponseBody et @Controller cependant sur le client la réponse est toujours PENDIN comme xhr(pending)

Je ne sais pas quelle est la question. Ça a l'air simple mais pas terrible je dis. pour envoyer la demande ajax

@RestController 
public class MyUserController { 

    @Autowired 
    private UserService userService; 

    @RequestMapping(path = "/registration", method = RequestMethod.POST) 
    public ResponseEntity registration(@RequestBody User userBean) throws Exception { 

     HttpHeaders headers = new HttpHeaders(); 

     if (userService.isUserExist(userBean)) { 
      System.out.println("user already exists"); 
      return new ResponseEntity(headers, HttpStatus.CONFLICT); 
     } else { 
      userService.saveUser(userBean); 
      return new ResponseEntity(headers, HttpStatus.OK); 
     } 
    } 
} 

javascript côté client (noeud js):

var express = require('express'); 

app.post('/registration', registration); 

function registration(req, res, next){ 
    request({ 
     url:'http://localhost:8084/RootScopeIT_Riot/registration', 
     method:'POST', 
     json: { 
      "username": req.body.username, "password": req.body.password 
     }, 
     function(error, response, body){ 
      if(error){ 
       console.log('err while registration'); 
       return res.send(error); 
      }else{ 
       console.log('success registration'); 
       return res.send({body}); 
      } 
     } 
    }); 
} 
+0

À quoi ressemble votre bean 'User'? Est-ce que les noms de champs correspondent à un RequestBody valide? –

+0

@DanielBubenheim l'a corrigé tout à l'heure. Merci – Satyadev

+0

Bon à entendre. Quel était le problème à la fin? –

Répondre

0

Je ne pense pas que vous pouvez faire return de res.send. Supprimez simplement la déclaration return et faites-moi savoir si cela fonctionne.

+0

mais le 'console.log ('inscription de succès');' n'imprime pas du tout – Satyadev

+0

de toute façon je vais le changer et vous le faire savoir – Satyadev

+0

Avez-vous un débogueur sur le serveur? – reflexdemon