Контроллер MVC не доступен из запроса POST Ajax Jquery

0

Я столкнулся с проблемами с отправкой запроса POJ ajax на контроллер MVC.

Мой клиентский код:

     cb.setConsumerKey("x","y");
            cb.setProxy('proxy address'); //indicative
            var id=null;
            var pass= null;
            var jsonObj=null;

                function authorize(){

                    cb.__call(
                            "oauth_accessToken",
                            {oauth_verifier: document.getElementById("PINFIELD").value},

                            function (reply) {

                                    id = reply.oauth_token;                                      
                                    pass = reply.oauth_token_secret;

                                     jsonObj = {
                                                            user: []
                                                    };
                                    jsonObj.user.push({
                "id" : id,
                                    "psw" : pass
                                    });

                                    alert(JSON.stringify(jsonObj));
                                    $.ajax({
                                        url: "/OAuthControl",
                                        type: "POST",                                            
                                        data: JSON.stringify(jsonObj),                                     
                                        contentType: "application/json; charset=utf-8",
                                        success: function(result) {
                                            alert(done);
                                        },
                                        error: function(xhRequest, ErrorText, thrownError) {
                                        alert(JSON.stringify(jsonObj));
                                        }
                                    });      

                            }
                    );


            }

тогда как код в контроллере:

@Controller
@RequestMapping(("/auth"))
public class AuthController {

................................................................

@RequestMapping(value="OAuthControl", method = RequestMethod.POST)
@ResponseBody
public String OAuthControl(
        @RequestParam String user,
        HttpServletResponse response

){

  //todo

 }

Я боролся с этим несколько часов, так как кажется, что контроллер никогда не называется. Я всегда получаю сообщение, определенное в функции ошибки.

  • 0
    у вас есть отображение как / auth, но оно не указано в URL-адресе ajax
  • 0
    Да, я заметил, и я заменил его на @RequestMapping(("/") (("/")), но все равно не работает.
Показать ещё 3 комментария
Теги:
spring-mvc
post

1 ответ

0
$.ajax({
        cache : false,

        type : "POST",

        url : "/OAuthControl?date=" + new Date(),

        dataType : "json",

        success : function(responseData) {

        },
        error : function(e) {

            alert("Error :"+e);
        }

    });

новая дата гарантирует, что новый запрос выполняется каждый раз. Надеюсь это поможет

  • 0
    Все еще не работает. В любом случае, спасибо за ваше предложение.
  • 0
    о, тогда вероятно URL может быть неправильным, как сказал @jax

Ещё вопросы

Сообщество Overcoder
Наверх
Меню