Может ли Dymo JavaScript API подключаться к веб-сервису Dymo, который размещен на другом компьютере в той же сети?

#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 компьютера, все остальные в локальной сети могли бы его использовать.