0

AJAX 呼び出しから取得した XML オブジェクトがあり、それに対していくつかの操作を行いました。

$.ajax({
            url: "url_of_xml",
            type: 'GET',
            dataType: 'xml',
            success: function (xml) {
                var sld_doc= $(xml)

                // manipulations with the XML file
            }
   })

XML ファイルは正しく変更されており、必要な方法です (追加/変更されたノードを使用)。ここで、変更した XML を (GeoServer インスタンスに) POST する必要があります。

      $.ajax({
                url: "geoserver/rest/styles",
                type: 'POST',
                data: sld_doc,
                headers: {
                    "Content-Type": "application/vnd.ogc.sld+xml"
                },
                dataType: 'json',
                success: function (data) {a
                    console.log(JSON.stringify(data));
                },
                error: function (x, e) {
                    console.log(x.status + " " + x.responseText);
                }
            });

エラーが発生します:500 org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog.

私が読んだことから、XMLドキュメントの先頭にあるタグの前の文字が原因です。

サーバーに正しく送信できるように、XML オブジェクトの物乞いをきれいにするにはどうすればよいですか? でノードにアクセスできますsld_doc.find("node_name")が、最初のノード ( ) の前に無効な文字があるかどうかを確認するにはどうすればよい<?xml>ですか?

4

1 に答える 1