Локальный HTML, содержащий SWF, не может подключиться к Интернету - PullRequest
0 голосов
/ 03 июля 2019

Мой проект Flash загружает данные из Интернета через страницу PHP на моем веб-сайте. Он работает правильно в следующих средах, но не будет работать, когда я пытаюсь проверить его с помощью локального HTML-файла, содержащего SWF.

Мой SWF-файл может подключаться к Интернету через:

Adobe Animate Test (Ctrl+Enter)
Adobe Animate Debug (Ctrl+Shift+Enter)
Standalone Flash Player
On my website in HTML (www.myWebsite.com/myFlash.html)

МОЙ SWF НЕ МОЖЕТ подключиться к Интернету в:

local HTML file containing the SWF (C:\test\myFlash.html)

Можно ли использовать локальный HTML со встроенным SWF для подключения к Интернету? Я пытался заставить его работать в Chrome, MS Edge и IE11, но мне это не удалось.

Вот мой HTML:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Test</title>
  </head>
  <body style="background-color:#f0f5f8">
    <object width="1280" height="720" data="Main.swf" style="border:1px solid black; margin-left: auto; margin-right:auto; display:block">
      <param name="movie" value="Main.swf" />
      <param name="quality" value="high" />
      <param name="bgcolor" value="#000000" />
      <param name="play" value="true" />
      <param name="loop" value="false" />
      <param name="wmode" value="direct" />
      <param name="scale" value="showall" />
      <param name="menu" value="false" />
      <param name="devicefont" value="false" />
      <param name="salign" value="" />
      <param name="allowScriptAccess" value="always" />
      <param name="allowFullScreenInteractive" value="true" />
    </object>
  </body>
</html>

Редактировать: я заставил свой SWF выводить сообщение об ошибке, и теперь, когда я пытаюсь воспроизвести его в локальном HTML, TextField отображает «securityError - Error # 2048». Похоже, это связано с наличием на сайте crossdomain.xml, который я размещаю по адресу www.myWebsite.com/crossdomain.xml:

.
<?xml version="1.0" ?>
<cross-domain-policy>
  <site-control permitted-cross-domain-policies="master-only"/>
  <allow-access-from domain="*" />
</cross-domain-policy>

1 Ответ

0 голосов
/ 04 июля 2019

Я понял это.Мне пришлось изменить эту строку в файле crossdomain.xml с:

<allow-access-from domain="*"/>

на следующее:

<allow-access-from domain="*" secure="false"/>

Мой сайт на самом деле https://www.myWebsite.com/,, что означает, что мне нужен безопасный= "false", чтобы сайты, не являющиеся https, могли получить к нему доступ.

...