сохранение текстового файла на стороне клиента без запроса разрешения - PullRequest
1 голос
/ 31 марта 2011

Мне нужно сохранить текстовый файл на стороне клиента, возможно, без разрешения. Дело в том, что мне нужно сохранить этот текстовый файл в общей папке на этом или на другом компьютере в локальной сети. Этот текстовый файл будет автоматически прочитан фискальным принтером, который распечатает фискальный счет. У меня есть веб-приложение asp .net, и сервер не находится на одной локальной сети с фискальным принтером, поэтому я должен написать его на стороне клиента. Любая идея, как это сделать, не спрашивая пользователя каждый раз о проблеме безопасности. Мне нужно кросс-браузерное решение.

Я могу принять решение, подобное тому, что клиента просят только один раз при первой печати, но не каждый раз, когда он хочет распечатать счет. Какой-то вид запроса разрешения клиенту для разрешения этого сайта, чтобы не повторять запрос разрешения.

Ответы [ 4 ]

4 голосов
/ 31 марта 2011

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

2 голосов
/ 31 марта 2011

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

Однако ваш Клиент может установить ваше приложение, которое будет иметь возможность читать и писать в любом месте.

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

Теперь вы, вероятно, говорите себе: «Но я не устанавливаю вирус». Однако браузер не может узнать, является ли ваше приложение вирусом или нет. Вот почему это не разрешено, и почему вы не можете это сделать.

0 голосов
/ 31 марта 2011

Вы можете использовать куки, которые не будут спрашивать разрешения.Конечно, это будет работать только при включенных файлах cookie и может хранить ограниченные объемы данных.

0 голосов
/ 31 марта 2011

Более подходящий сценарий для меня:

1- Работайте внутри своего веб-приложения.

2- Получите информацию, которую нужно распечатать.

3- Отправьте его непосредственно на другой компьютер (или в размещенный веб-сервис), и этот компьютер будет выступать в качестве хоста для этих файлов.

4 - разрешите вашему серверу доступ к этой общей папке и распечатайте, что вы хотите

...