2017-02-06 3 views
0

У меня есть странная проблема с контроллером Spring и ajax. Метод контроллера возвращает 404, когда я пытаюсь передать ему объект JSON, используя ajax.404 ответ метод вызова в весеннем контроллере

Это мой код:

@Data 
@Builder 
@JsonAutoDetect 
public class Car { 
    private int gears; 
    private String color; 
} 

@Slf4j 
@RestController 
public class Test { 

    @PostMapping("/ajaxJsonPost") 
    public @ResponseBody HttpEntity<Car> samochod(@RequestBody Car car) { 
     return new ResponseEntity<>(Car.builder().color(car.getColor()).gears(car.getGears()).build(), HttpStatus.OK); 
    } 

    @RequestMapping(value = "/ajaxJsonPost", method = RequestMethod.GET) 
    public HttpEntity<Car> samochod() { 
     return new ResponseEntity<>(Car.builder().color("blue").gears(1).build(), HttpStatus.OK); 
    } 
} 

И я посылаю Аякса с кодом Python:

def main(): 
    app_url = 'http://localhost:8888/ajaxJsonPost' 

    session = requests.Session() 
    data = {'car': {'gears': 1, 
        'color': 'blue'}} 
    response = session.post(url=app_url, data=data) 
    # response = session.get(url=app_url) 
    print(response) 
    print(response.content) 


if __name__ == "__main__": 
    main() 

ответ

0

Вы должны добавить контекст вашего приложения на Ajax вызова

def main(): 
    app_url = 'http://localhost:8888/YOUR_APP_CONTEXT/ajaxJsonPost' 
+0

I не понимаю. Как я должен это делать? Где я должен его установить? – Piotrowy

+0

Я добавляю в свойства 'server.contextPath =/main /', но он все равно не работает. – Piotrowy

 Смежные вопросы

  • Нет связанных вопросов^_^