0
0

xml(kml)をJquery $.ajax で取得できなかった際に、fetch + parseFromString で取得できた話

Posted at

xmlファイル(kmlファイル)をjsで取得する際、Jquery $.ajaxで取得できず、fetch + parseFromStringで取得できたケースがあった。

jqueryを使った場合では取得できず、、(resにnullが入る)

jqueryを使った場合
const res = await new Promise((resolve, reject) => {
  $.ajax({
     url: fileURL,
     cache: false,
     dataType: 'xml',
     success: function (data) {
        resolve(data);
     },
     error: function (err) {
       reject(err);
     },
  });
});

parseFromStringで取得できた。

fetch + parseFromStringを使った場合
const res = await new Promise((resolve, reject) => {
      fetch(fileURL).then(res => res.text()).then(async kmltext => {
      
        if (!kmltext) {
          reject("not kmltext");
          return;
        }

        const parser = new DOMParser();
        const kml = parser.parseFromString(kmltext, 'text/xml');
        resolve(kml);
      });
    });

読み込むファイルfileURLのどこが問題だったか

問題箇所は調査中です。。。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0