Использование EJS в iOS 8 WKWebView (запрос перекрестного происхождения)

#javascript #ios #ejs #ios8 #wkwebview

#javascript #iOS #ejs #ios8 #wkwebview

Вопрос:

У меня есть приложение на iOS, которое использует EJS для отображения некоторых необычных вещей в веб-представлениях. Я нахожусь в процессе настройки его для использования WKWebView в iOS 8, но у меня возникают проблемы. Когда я создаю новый EJS для рендеринга:

 var myjs = new EJS({url: 'file.ejs'}).render({...});
  

Я получаю сообщение об ошибке в консоли:

Не удается загрузить XMLHttpRequest file:///Users/me/Library/Developer/CoreSimulator/Devices/hash/data/Containers/Bundle/Application/34E247A4-34F3-4334-99D3-C236715427E6/MyApp.app/file.ejs. Запросы перекрестного происхождения поддерживаются только для HTTP.

Это работало с UIWebView iOS 6 и 7. Что происходит в 8? Это ошибка WKWebView или есть что-то особенное, что мне нужно сделать с путем? Я пробовал / добавлять и ~/ file.ejs безрезультатно.

Комментарии:

1. У меня аналогичная проблема с ThreeJS. В моем случае я использую THREE.JSONLoader, который выполняет вызов Ajax, и проблема в том, что код xhr.status равен 0. Кажется, что XHR не работает с WKWebView

2. Хорошо, я понял, что код состояния 0 означает отменено, прежде чем куда-либо идти. Вероятно, из-за запроса перекрестного происхождения. Как вам удалось получить эту ошибку?