Создание приложения flask + heroku, хостинга s3 для активов c (js и изображения в данный момент не загружаются) - PullRequest
0 голосов
/ 03 февраля 2020

Я создаю flask приложение под названием Neuroethics_Behavioral_Task.

У меня также есть ведро s3 под названием neuroethics-task. В каталог root я загрузил файл с именем experiment.js и изображение test.png.

Я следовал инструкциям в этих двух частях документации Heroku о s3:

В первой ссылке сказано следующее о том, как получить доступ к ресурсам, которые вы загрузили на s3

После загрузки ресурсов вы можете обратиться к их публикациям c URL (например, http://s3.amazonaws.com/bucketname/filename) в коде вашего приложения. Эти файлы теперь будут обслуживаться непосредственно из S3, освобождая ваше приложение для обслуживания только динамических c запросов.

Так что у меня есть эта строка в заголовке одного из html шаблонов.

<script href="http://s3.amazonaws.com/neuroethics-task/experiment.js"></script>

Я также попытался включить изображение, скопировав путь непосредственно на s3 (что отличается от документов heroku). Вот эта строка.

<img src='s3://neuroethics-task/test.png'

Проблема в том, что ничего не происходит, когда я захожу на веб-страницу, которая должна использовать javascript из эксперимента. js в настоящее время, когда Я пытаюсь использовать приложение Flask ЛОКАЛЬНО .

Я подозреваю, что, возможно, все будет работать, если я отправлю sh героку ... Но мне нужно, чтобы в первую очередь было запущено и отлажено локальное отлаженное решение. Поэтому мне нужно выяснить, как правильно ссылаться на эти файлы.

Я получал сообщения об ошибках раньше, когда использовал src= и когда у меня были варианты префикса URL. Но теперь, когда я попадаю на страницу, которая должна загрузить experiment.js, ничего не происходит. experiment.js использует javascript фреймворк под названием JsPsych, который в основном работает как приложение stati c - от jspsych не происходит перенаправлений. Вы должны создать шаблон html для flask, но все, что вам нужно сделать для этого шаблона, это включить ссылку на файл experiment.js.

Поскольку experiment.js просто нет пока не загружается, и поскольку в этом шаблоне нет других html, поскольку все они находятся в пределах experiment.js, ничего не происходит.

У меня установлены переменные окружения:

$ export AWS_ACCESS_KEY_ID=jhdfshfjskdhfj
$ export AWS_SECRET_ACCESS_KEY=jlsjfklksfjlfh

Я не уверен, какие настройки разрешений мне нужны на s3. Для моего ведра у меня есть

Block public access to buckets and objects granted through new access control lists (ACLs) -- Off
Block public access to buckets and objects granted through any access control lists (ACLs)-- Off
Block public access to buckets and objects granted through new public bucket or access point policies -- On
Block public and cross-account access to buckets and objects through any public bucket or access point policies -- On

Итак ... что здесь не так? Я просто хочу, чтобы мой javascript хотя бы загрузился.

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