#javascript #api #web-services #dymo
#javascript #API #веб-сервисы #dymo
Вопрос:
У меня есть задача создать онлайн-приложение, которое позволило бы печатать этикетки с помощью Dymo LabelWriter 450 Turbo printer. Цель этого приложения — сотрудники компании отправляют данные, которые должны быть на наклейках, через веб-сайт, и когда они нажимают «печать», все этикетки печатаются на одной из офисных машин.
После запуска веб-сервиса Dymo на упомянутых компьютерах я могу печатать этикетки, если я нажимаю печать, находясь на этих компьютерах, через JavaScript API, предоставляемый Dymo, однако, если я попытаюсь получить доступ к сценарию, который я написал с других компьютеров в сети, печать не работает. Это связано с тем, что JavaScript API указывает на ‘localhost’. Я скачал JavaScript API локально и заменил в нем ‘localhost’ на IP-адреса компьютеров в сети, но теперь API при попытке доступа к веб-сервису истекает время ожидания. Есть ли какой-либо способ решить эту проблему?
Вот визуализация того, как все работает:
-------------------------------------------------
| Local machine, 198.168.0.1 |
| |
| Dymo webservice runs here. |
| |
| If JavaScript API is run, it communicates |
| with webservice without any problems, |
| printing works. API points to 'localhost' |
| |
-------------------------------------------------
Вот визуализация того, что я хочу сделать, но что не работает, потому что время ожидания API истекает при попытке связаться с веб-службой:
-------------------------------------------------
| Local machine, 198.168.0.1 |
| |
| Dymo webservice runs here. |
| |
-------------------------------------------------
|
| LAN
|
-------------------------------------------------
| Local machine, 198.168.0.2 |
| |
| Javascript API is downloaded here and |
| 'localhost' is replaced to 198.168.0.1 |
| |
| After user accesses a webpage and clicks print,|
| API tries to contact web service, but times out|
| |
-------------------------------------------------
Заранее спасибо!
Ответ №1:
Dymo привязывается к адаптеру обратной связи, поэтому вы можете подключиться только с помощью 127.0.0.1 или localhost. В вашем случае я бы посоветовал использовать принтер в сети, как и любой другой принтер, и установить программное обеспечение Dymo Label на каждой рабочей станции при установке Dymo в качестве сетевого принтера.
Комментарии:
1. Да. Это особенно прискорбно, потому что у Dymo есть только современное программное обеспечение для Windows. Пользователи Mac остаются на холоде, а Linux полностью. Для них нет веб-сервиса, что делает невозможной печать с веб-страницы на этих платформах. Если бы был способ предоставить этот веб-сервис с 1 компьютера, все остальные в локальной сети могли бы его использовать.