Ошибка при загрузке данных XML в Javascript - PullRequest
0 голосов
/ 24 октября 2018

У меня проблема с загрузкой данных XML в Javascript.Однако, если я загружаю тот же XML в классическом ASP, он работает, но если я загружаю тот же самый в Javascript, он терпит неудачу.

Вот фрагмент кода для загрузки XML в классическом ASP, и он прекрасно работает.

set ObjXMLDom = nothing 
set ObjXMLDom = server.CreateObject("Microsoft.XMLDOM")
ObjXMLDom.async = False

set objSvr = Server.CreateObject("myComMethod.MyComMethod.1")
ObjXMLDom.loadXML(objSvr.GetHierarchyXML()) 'XML loads perfectly fine from server. even if the special character is Dash –
Response.Write(ObjXMLDom.xml) 

код в Javascript для загрузки XML, но он не работает для некоторых специальных символов.

$.ajax("get_xml_from_server.asp", {
                type: 'GET',
                data: { name: groupID, session: sesionID, Employee: empID },
                beforeSend: function () {
                },
success: function (data, status, jqXhr) {

//Data has got the XML string, we can see it by putting alert

alert(data); 

var myXML = new ActiveXObject("Microsoft.XMLDOM");
myXML.async = false;
myXML.loadXML(data); //Here it fails for some special characters like Dash – 


if (myXML.parseError.errorCode != 0) 
      {
          var myErr = myXML.parseError;
          alert("You have error " + myErr.reason + myErr.line + myErr.srcText);
      } 
else  {
          alert(myXML.xml);
      } 

1 Ответ

0 голосов
/ 24 октября 2018

Я подозреваю, что есть проблема с кодировкой: файл XML находится в одной кодировке, и анализатор пытается декодировать его, предполагая другую кодировку, и это приводит к ошибке декодирования не-ASCII символов.Вы не дали нам никакой информации о кодировках, так что это полностью предположительно.Попробуйте установить

(a) какова фактическая кодировка XML «на диске» на сервере

(b) что делает объявление XML в начале файла (если есть)) говорят, что кодировка имеет вид?

(c) каков тип носителя и кодировка ответа HTTP, который доставляет полезную нагрузку XML в браузер?

Скорее всего, я предполагаю, чтоесть что-то, что вам нужно изменить в конфигурации вашего веб-сервера / HTTP, чтобы обеспечить правильную доставку файлов XML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...