Чтение открытие файла по сети
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Чтение открытие файла по сети
Добрый день!
файл на ходится по адресу https:\192.168.0.1\FileBrowser\Download?Path=\DataLogs\DataLog.csv
и нужно его прочитать через LabVIEW.
Какая функция позволяет открыть файл расположенный в сети?
файл на ходится по адресу https:\192.168.0.1\FileBrowser\Download?Path=\DataLogs\DataLog.csv
и нужно его прочитать через LabVIEW.
Какая функция позволяет открыть файл расположенный в сети?
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Чтение открытие файла по сети
Data Communication -> Protocols -> HTTP Client -> GET.vi
В конце URL надо добавить [text]
В конце URL надо добавить [text]
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Чтение открытие файла по сети
Соединение устанавливается. ошибок нет.
логин и пароль не требуется (я его убрал)
А как сам файл открыть или прочитать?
логин и пароль не требуется (я его убрал)
А как сам файл открыть или прочитать?
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Чтение открытие файла по сети
Алексей, посмотрите в теме: http://www.labviewportal.org/viewtopic.php?t=6431Aleksey Feoktistov писал(а):Соединение устанавливается. ошибок нет.
Там при работе клиента, скачивается файл с сервера данных.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Чтение открытие файла по сети
Иван, я так понимаю, в примере работа идет по протоколу TCP?
Какой subVI отвечает за чтение файла?
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Чтение открытие файла по сети
HTTP относится к семейству TCP/IP, это надстройка над ним.Aleksey Feoktistov писал(а):Иван, я так понимаю, в примере работа идет по протоколу TCP?
Какой subVI отвечает за чтение файла?
Содержимое файла по идее должно быть в HTTP Response SubVI, которую Вы показали на скрине, в текстовом виде.
А вот что делать потом с этим содержимым, решать Вам.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Чтение открытие файла по сети
По-моему, здесь всё просто. Параметр body - это файл в бинарном представлении.Aleksey Feoktistov писал(а):Соединение устанавливается. ошибок нет.
логин и пароль не требуется (я его убрал)
А как сам файл открыть или прочитать?
- Вложения
-
- Get_File_By_Url.vi
- lv2011
- (10.52 КБ) 205 скачиваний
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Чтение открытие файла по сети
Похоже проблема в том, что я не правильно указываю путь (до сих пор не нашел правильную ссылку)
Если указываю ссылку http:\192.168.0.2\FileBrowser\Download?Path=\DataLogs\DataLog.csv
то вообще ничего не приходит и headers =
В общем, буду разбираться
файл весит 2 Мб и приходит в body намного меньшеЕсли указываю ссылку http:\192.168.0.2\FileBrowser\Download?Path=\DataLogs\DataLog.csv
то вообще ничего не приходит и headers =
Код: Выделить всё
HTTP/1.1 302 Object Moved
Content-Type:text/html
Content-Length:0
Location: http://192.168.0.2/Portal/Portal.mwsl?PriNav=FileBrowser&Path=/
Date: Thu Feb 16 22:52:17 2012
-
- leader
- Сообщения: 932
- Зарегистрирован: 17 янв 2016, 15:02
- Награды: 1
- Версия LabVIEW: 6.1,8.5,20
Re: Чтение открытие файла по сети
Справка для DataSocket функций
To read a text file from an FTP site using DataSocket functions, add [text] to the end of the URL.
To read a text file via the http protocol using DataSocket functions, add [text] to the end of the URL.
To read a text file from an FTP site using DataSocket functions, add [text] to the end of the URL.
To read a text file via the http protocol using DataSocket functions, add [text] to the end of the URL.
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Чтение открытие файла по сети
загрузил на контроллер картинку в формате *.png и попытался считать её
ситуация та же.
http://192.168.0.2/FileBrowser/Download ... s/cRIO.png
попробовал такой запрос
тоже не работает
ситуация та же.
http://192.168.0.2/FileBrowser/Download ... s/cRIO.png
Код: Выделить всё
HTTP/1.1 302 Object Moved
Content-Type:text/html
Content-Length:0
Location: http://192.168.0.2/Portal/Portal.mwsl?PriNav=FileBrowser&Path=/
Date: Sun Jan 17 12:43:10 2016
Код: Выделить всё
http://192.168.0.2/FileBrowser/Download?Path=/DataLogs/DataLog.csv[text]
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Чтение открытие файла по сети
При попытке открыть файл по прямой ссылке через браузер
выходит сообщение
File operation not permitted - no referrer
Операция с файлом не разрешена - нет реферера
т.е. проблема во внутренней безопасности контролера
осталось придумать как его обмануть
Код: Выделить всё
http://192.168.0.2/FileBrowser/Download?Path=/DataLogs/DataLog.csv
File operation not permitted - no referrer
Операция с файлом не разрешена - нет реферера
т.е. проблема во внутренней безопасности контролера
осталось придумать как его обмануть
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Чтение открытие файла по сети
То есть, в браузере обращение по адресу https://192.168.0.1/FileBrowser/Downloa ... ataLog.csv выдаёт файл, а в нет? Обратите внимание на слэши, в url слэш должен быть везде / (после http(s) два слэша), а в локальных путях - \. Если так, то нужно посмотреть, куда происходит редирект. Проще всего проверить сниффером: Fiddler или Charles. Настройте сниффер, потом откройте в браузере указанный url и смотрите цепь запросов. Ну, и хэдеры тоже полезно глянуть.
upd:
upd:
А откуда вы взяли этот url? И как и где он работает?Aleksey Feoktistov писал(а):При попытке открыть файл по прямой ссылке через браузервыходит сообщениеКод: Выделить всё
http://192.168.0.2/FileBrowser/Download?Path=/DataLogs/DataLog.csv
File operation not permitted - no referrer
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Чтение открытие файла по сети
Правильная ссылка вот
При копировании этой ссылки и вставке её в браузере выходит сообщение
т.е. в веб странице есть какая-то защита, которая запрещает обращаться к файлам по прямым ссылкам.
ближайшая прямая ссылка
затем, нужно с этой страницы перейти сначала на
а затем, можно будет нажать на кнопку и перейти по ссылке
ссылка на конечный файл запрограммирована так
Код: Выделить всё
http://192.168.0.2/FileBrowser/Download?Path=/DataLogs/DataLog.csv
Операция с файлом не разрешена - нет реферераFile operation not permitted - no referrer
т.е. в веб странице есть какая-то защита, которая запрещает обращаться к файлам по прямым ссылкам.
ближайшая прямая ссылка
Код: Выделить всё
http://192.168.0.2/FileBrowser/Download?Path=/
Код: Выделить всё
http://192.168.0.2/FileBrowser/Download?Path=/DataLogs/
Код: Выделить всё
http://192.168.0.2/FileBrowser/Download?Path=/DataLogs/DataLog.csv
Код: Выделить всё
</td></tr><tr><td class="fileBrowserDir"> </td><td class='fileBrowserName'><span class='hiddenOnSmall'><a href="/FileBrowser/Download?Path=/DataLogs/DataLog.csv">DataLog.csv</a></span><span class='hiddenOnLarge'><a href="/FileBrowser/Download?Path=/DataLogs/DataLog.csv">DataLog.csv</a></span></td><td class="contentTableField fileSize">1920033</td><td class="contentTableField fbChanged"><span class="systemTime"><span class="fbTime">01:12:20 pm <br class="hiddenOnLarge"> 1/17/2016</span></span><span class="localTime" style="display: none;"><span class="fbTime">02:12:20 pm <br class="hiddenOnLarge"> 1/17/2016</span></span></td><td class="contentTableField deleteItem"><form method="GET" action="/FileBrowser/DeleteFile" onsubmit="return Delete('file')"><input type="hidden" name="Path" value="/DataLogs/DataLog.csv" /><input id="img_trash_3" src="../Images/Trash.gif" title="Delete" class="imageButton2" alt="Delete" type="image" ></form></td><td class="contentTableField"><form id='renameForm_3' class='renameForm' action='/FileBrowser/Rename' method='POST'>
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Чтение открытие файла по сети
теперь надо разобраться как можно реализовать это
https://ru.wikipedia.org/wiki/HTTP_referer
https://ru.wikipedia.org/wiki/HTTP_referer
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Чтение открытие файла по сети
Ну, значит, сервер должен установить cookies, чтобы можно было дальше работать. А может не хватает каких-то хэдеров. Обычно сервер сам прописывает cookies, нужно лишь переходить по ссылкам через GET/POST запросы. Посмотрите, какие cookies создаются при переходе по трём указанным ссылкам. Только сперва вычистите старые, чтоб не мешались. В попробуйте воспроизвести последовательность перехода: сперва зайдите на один url, потом на второй и т.д. Это должно прописать cookies. Полезно перед этим у себя прописать дефолтные заголовки. Пример можно глянуть тут: http://www.labviewportal.org/viewtopic. ... 162#p65162Aleksey Feoktistov писал(а):Правильная ссылка вотПри копировании этой ссылки и вставке её в браузере выходит сообщениеКод: Выделить всё
http://192.168.0.2/FileBrowser/Download?Path=/DataLogs/DataLog.csv
Операция с файлом не разрешена - нет реферераFile operation not permitted - no referrer
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение