Shinyapps.io в браузере сафари не может подключиться к серверу "localhost" - PullRequest
0 голосов
/ 15 января 2019

Я создал простое приложение в блестящем, которое подключает и загружает данные в общую таблицу googlesheet. Приложение отлично работает локально, однако, когда я пытаюсь запустить его в веб-браузере, оно не загружает никаких данных.

Проблема кажется довольно простой. Используя блестящий apps.io, я могу просматривать журналы приложений, и он определяет, что мне нужно предоставить разрешение приложения (в частности, shinyapps и tidyverse) для загрузки данных на листы Google, что разрешено листами Google. Это не проблема, так как я прошел тот же процесс на своей машине локально:

1) I'm running on a Mac, OSX Mojave v 10.14.2 
2) I've enabled web sharing via the terminal with sudo apachectl start (I think that's all it took?)
3) I've scoured similar problems on here. 
4) The app opens and uploads data when I "view in browser" from the RStudio IDE
5) I wanted to try Shiny Server, however apparently they haven't written anything for Macs yet that doesn't have to built from source, which is way beyond my level.
6) The google sheet is published to the web as well.

Это сообщение из журналов shinyapps.io

Listening on http://127.0.0.1:37073
2019-01-15T14:33:32.976569+00:00 shinyapps[636194]: Adding .httr-oauth to .gitignore
2019-01-15T14:33:33.012405+00:00 shinyapps[636194]: Please point your browser to the following url: 
2019-01-15T14:33:33.010168+00:00 shinyapps[636194]: Waiting for authentication in browser...
2019-01-15T14:33:33.010485+00:00 shinyapps[636194]: Press Esc/Ctrl + C to abort
2019-01-15T14:33:33.012759+00:00 shinyapps[636194]: "This is the provided URL"

I then go to the provided URL, that takes me to a accounts.google page that asks me to provide authentication to a specific google account, which I do.

Затем я получаю эту ошибку от сафари:

Safari can't open the page "the provided URL" because safari cannot connect to the server "localhost"

Мне бы очень хотелось, чтобы это приложение использовалось только разрешенной учетной записью Google, которая является общей, и могла бы загружать не более 3-х разных компьютеров, являющихся окнами. Любая помощь приветствуется!

1 Ответ

0 голосов
/ 15 января 2019

В моем коде я нашел временное решение, так как я использую пакет google листов в R, он называется функцией:

gs_title("worksheet title") 

это позволяет приложению идентифицировать рабочий лист, которому был предоставлен доступ к приложению, однако это проблема при загрузке приложения через Интернет, я использовал другую функцию под названием:

gs_url("worksheet URL as copied from search bar")

Он пропускает URL-адрес листа, по-видимому, в обход проблемы с локальным сервером и позволяет открывать приложение с других компьютеров.

...