Доступ к файлам ОС с помощью django внутри электронного приложения

#reactjs #django #electron

Вопрос:

У меня есть веб-приложение, созданное с помощью Django/React. Я хочу преобразовать его в электронное приложение и не уверен, нужно ли мне реорганизовать часть бэкэнд-кода в node.js.

Вот соответствующая информация:

  1. Пользователю необходимо создать файл со своим собственным токеном API, полученным от третьей стороны. Я хотел бы избежать отправки их личного токена на мой сервер и хочу сохранить его в своей операционной системе.
  2. Django использует токен для запроса данных из стороннего api.
  3. Django отправляет данные обратно на интерфейс.

Мой вопрос в том, как только приложение будет включено в комплект как электронное приложение, сможет ли django получить доступ к своему маркеру api и запросить сторонний api, не задев мой сервер? Будет ли код django выполняться на локальном хосте (или может), я догадываюсь, что я имею в виду.

Спасибо, надеюсь, что это правильный вопрос.

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

1. Итак, у вас есть приложение Django, которое работает на вашем собственном сервере, но вы также хотите, чтобы к нему прилагалось настольное приложение, верно? Почему вы думаете о том, чтобы объединить все приложение Django с приложением Electron? Не мог бы Electron просто быть внешним интерфейсом и связаться с вашим внутренним сервером по HTTPS? Таким образом, вы будете читать/записывать файлы из своего электронного приложения. Кроме того, перенос целого HTTP-сервера на ПК вашего клиента кажется ужасно похожим на ненужное раздувание.

2. Частью лицензии API третьей стороны является то, что вы не можете поделиться своим ключом, я предполагаю, что это означает и с моим сервером. Хотя большая часть другого кода django будет храниться на моем собственном сервере, часть кода, которая касается обработки данных сторонних данных, я планировал объединить, чтобы избежать рефакторинга. Но подумав об этом, рефактор вообще избежал бы необходимости связывать python, так что, возможно, лучшим решением было бы написать все это на javascript. Спасибо за ваш ответ.