1

私は、ある種の Web ベースの XML エディターを含む Web アプリに取り組んでいます。基本的に、html テキストエリアを「エディター」として使用し、ユーザーが「保存」ボタンをクリックすると、変更された XML を含む AJAX ポスト リクエストがサーバーに送信されます。$.ajax 関数を使用します

 function saveXML(){
     var cm = editor.mirror; 
     var textXML = cm.getValue(); // textXML is a String representing edited XML
     $.ajax({
            url: "saveEditedBatch",
            data: {xmlString: textXML}, 
            type: 'POST',
            success : function(response){

            },
            error : function (){  
                alert("error");
            } 
        });  

サーバー側にはコントローラーがあります

    @RequestMapping(value = "/saveEditedBatch", method = RequestMethod.POST)
public @ResponseBody JsonResponse saveEditedBatch(@RequestParam(value = "xmlString") String xmlString){
    JsonResponse response = new JsonResponse();
    byte[] byteXML = xmlString.getBytes();
    byteXML =  xmlAccess(new ByteArrayInputStream(byteXML));

    // do something with byteXML

    return response;
}

私のXML、したがってサーバーに送信する文字列が小さい場合、すべて正常に機能します。ただし、XML が大きい場合、「HTTP ステータス 400 - 必要な文字列パラメーター 'xmlString' が存在しません」と表示されますが、それを渡していることはわかっています。私に何ができる?

4

2 に答える 2

0

これは文字列のサイズとは関係なく、エラー コードは 400 であると述べました。長い文字列の場合、エラー コードは 414 です。URI が大きすぎて、8000 文字近くの制限がある GET リクエストに使用されます。

于 2013-10-11T09:27:07.867 に答える