, echan00 @ 당신이 개발하고있는 것과 동일한 네트워크에서. 여기에있는 주요 문제는 IP 주소입니다. 대부분의 로컬 네트워크는 192.168.XXX.XXX로 시작하는 IP 주소를 가지므로 네트워크에있는 프린터에도 동일한 범위의 IP 주소가 포함됩니다.
는 가정 수 있습니다 : 프린터 => 192.168.1.100 및 개발 시스템 => 192.168.1.45
이 기계 모두 동일한 네트워크에 있기 때문에, 그들은 서로 통신 할 수 있습니다. 제공자와 함께 웹 사이트를 호스팅하자마자 웹 사이트의 IP 주소는 기기의 IP 주소와 같지 않게됩니다. 새 IP 주소 10.1.57.221을 받았다고 가정 해 봅시다.
이제 웹 사이트는 LAN 외부의 IP로 호스트되며 프린터는 여전히 LAN에 있습니다. 호스팅 된 웹 사이트에서 인쇄 요청이 http://192.168.1.100/StarWebPRNT/SendMessage
일 때 주어진 응답을 확인할 수 있으면 200 회의 성공 요청 대신 404 또는 연결 시간 초과가 발생할 가능성이 매우 높습니다.
이 문제를 해결하는 한 가지 방법은 LAN의 서버에서 웹 사이트를 호스팅하지만 다른 사용자가 네트워크 외부에서 웹 사이트에 액세스 할 수 있도록 해당 컴퓨터에 공용 IP 주소를 제공하는 것입니다. 인쇄 요청이 내려지면이 경우 프린터를 확실히 찾을 수 있습니다.
또 다른 방법은 호스팅 제공 업체에서 계속 호스팅하지만 프린터에 공개 IP를 할당하여 IP 주소를 알고있는 사람이 프린터로 인쇄 요청을 발행 할 수 있도록하는 것입니다. 그러면 웹 사이트에서 프린터로 인쇄물을 요청할 수 있습니다.
웹 사이트는 실제로 프린터에 액세스 할 수 없으며 브라우저에서 인쇄하는 OS입니까? – adeneo
@adeneo 내 프린터에서 웹 요청을하고 있습니다. 그것은 운영 체제에서 인쇄되지 않습니다, 그렇습니다. 정상이 아닙니다. 영수증 프린터는 웹 요청 인쇄를 허용하기 위해이 기술을 제공합니다. – echan00
귀하의 웹 사이트도 'http : // 192.168.1.100 /'에서 호스팅하지 않는 한 요청은 [동일 원산지 정책] (https://developer.mozilla.org/en-US/docs/Web)을 통과하지 못합니다./Security/Same-origin_policy) (로컬 영역 네트워크는 SOP의 결과를 변경하지 않습니다.) [몇 가지 예외 중 하나를 만족해야합니다] (https://stackoverflow.com/questions/3076414/ways-to -circumvent-the-same-origin-policy), 또는 SOP가 적용되지 않는 서버 측이 될 수 있습니다. CORS 및 JSON-P 옵션 중 최소한 두 가지 옵션이 있음을 유의하십시오. 프린터의 웹 서버는 명시 적으로 사용하도록 지원해야합니다. –