2016-12-10 1 views
0

開発環境では、私のウェブサイトは、JavaScriptを使用してネットワークプリンタで印刷するローカルリクエストを行うことができます。私のウェブサイトはローカルでリクエストできますか?

しかし、私のウェブサイトは、私はもはやローカルプリンタにアクセスすることができますオンラインでホストされていない一回。見知らぬ人がウェブ上で自分のウェブサイトにアクセスした場合、なぜこれが当てはまるのか理解していますが、自分のウェブサイトにアクセスしている場合(自分のプリンタがそのコンピュータのローカルにある場合)はできませんか? echan00 @「http://192.168.1.100/StarWebPRNT/SendMessage

+0

あなたのウェブサイトが本当に任意のプリンタへのアクセス権を持っていない、それはブラウザからの印刷を行いOSですか? – adeneo

+0

@adeneo私は自分のプリンタで印刷するようにWebリクエストをしています。それはOSから印刷されていません。そうではありません。領収書プリンタは、Web要求印刷を許可するためにこの技術を提供しています。 – echan00

+0

あなたのウェブサイトは、HTTP 'からホストされていない限り:// 192.168.1.100 /'、([同一生成元ポリシー]を渡しません要求https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy)(ローカルエリアネットワークはSOPの結果を変更しません)、[いくつかの例外の1つを満たす]必要があります(https://stackoverflow.com/questions/3076414/ways-to -circumvent-the-same-origin-policy)、またはSOPが適用されないサーバー側で行うことができます。 CORSとJSON-Pという2つのオプションのうち、プリンターのWebサーバーが明示的にサポートを提供する必要があることに注意してください。 –

答えて

0

私は理由はあなたのプリンタが設置されていることだと思う:

EDIT: これは私が開発して印刷することにし、私のプリンタがローカルであるので、それが動作要求であるにあなたが開発しているのと同じネットワーク上にここでの主な問題は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上ではまだです。ホストされたWebサイトから印刷要求がhttp://192.168.1.100/StarWebPRNT/SendMessageになったときに応答が出された場合は、200回のリクエストの代わりに404または接続のタ​​イムアウトが発生する可能性が非常に高いです。この問題を解決するために

1つの方法は、LAN内のサーバー上のウェブサイトをホストするが、他の人がネットワークの外部からWebサイトにアクセスできるように、パブリックIPアドレスと、そのコンピュータを提供することです。印刷が要求されると、この場合には確実にプリンタを見つけることができます。

もう一つの方法は、IPアドレスを知っている誰もが、プリンタへの印刷要求を発行することができるようにホスティングプロバイダとホスティング続けるが、プリンタへのパブリックIPを割り当てることです。こうすることで、あなたのウェブサイトはプリンタに印刷物を要求することができます。

+0

私はそれも考えています。私のウェブサイトは私の現在のプロバイダと一緒にホストされなければならないので、プリンタにパブリックIPを割り当てる必要があります。それをどうやってやりますか?私はポートフォワーディングをしようとしたが、運がない、その解決策ですか?私はルーターと私のLANのすべてに管理者アクセス権を持っています。 – echan00

+0

パブリックIPはISPまたは使用しているクラウドサービスによって提供されています。ネットワーク上のデバイスを公衆インターネットネットワークに接続するには、ISPにリクエストする必要があります。また、ITチームを持っている場合は、ネットワーク管理者にリクエストを送信する必要があります。一般にサーバを公開して私的に利用できるようにするため、ネットワーク管理者は、多くの大学が公開しているWebサーバを持ち、内部LAN/VLANネットワークを持っているため、特に大学にはイカなどのプロキシをインストールします。 –

関連する問題