フロントエンドの各種415400およびjsonオブジェクトの問題について

2448 ワード

まず正しいチップです
 var test = {"menuid":"40","qxid":"50"};
                $.ajax( {
                    url : "${pageContext.request.contextPath}/jsqx/add.do", //            
                    type : "POST",  
                    dataType : "json",  
                    contentType:'application/json',
                    data:JSON.stringify(test),
                    success : function(result) { 

                    }
                })

バックエンド
@RequestMapping("/add")
    @ResponseBody
    public Map<String, Object> AddQxJs (@RequestBody Permission per){
    Map<String, Object> map = new HashMap<String, Object>();
    System.out.println(per.getMenuid());
    map.put("test", "test");
    return map ;
    }

ここでは実は3点に注意すればいいのですが、1点目は必ずjsonが入るフォーマットに注意しなければなりません.key値には二重引用符が必要です.通常のjson伝keyには二重引用符がありません.忘れた場合は415タイプが間違っています.それからタイプです.contentType伝出フォーマットは定義が必要です.JSON.stringify変換jsonも必ず追加する必要があります.そうしないと、400、エラーデータです.3つ目は、バックエンドとフロントエンドの受信オブジェクトのパラメータタイプが一致していることです.