0
私はWCFサービスを書くことを学んでおり、私が読んでいる本の例を参考にしながら、ステップバイステップで簡単なサービスを書いています。サービスは私のPCと私のローカルネットワークに接続されているすべてのデバイス上で正常に動作します。サービスを見ることができない場合(私が書いたクライアントアプリケーションとブラウザ(MEX)経由で)ローカルネットワークの「外部」から接続しようとすると、
私のホストのapp.config:
ローカルネットワークの外部からWCFサービスに接続することはできません
<system.serviceModel>
<services>
<service name="WCF_1_MagicEightBallService.MagicEightBallService"
behaviorConfiguration="MagicEightBallServiceMEXBehavior">
<endpoint address=""
binding="basicHttpBinding"
contract="WCF_1_MagicEightBallService.IMagicEightBall">
</endpoint>
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange">
</endpoint>
<host>
<baseAddresses>
<add baseAddress="http://[my ip]:8080/MagicEightBallService"/>
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MagicEightBallServiceMEXBehavior">
<serviceMetadata httpGetEnabled="true"/>
<useRequestHeadersForMetadataAddress/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
私のIPは私の外部IPですが、私はとし、無線LANルーターを使用せずに、別のポートとIPを使用して試してみました。
商用インターネットプランがない限り、ISPはほとんどのデフォルトWebポート(25,80,8080,443など)をブロックする可能性があります。 – Cameron
@Cameronので、自分でWebサービスをホストする方法はありませんか? IISでホスティングできますか? – Bibipkins
IIS内でホストすることができます。デフォルト以外のポートを使用するだけで済みます。 ... 10000と65535の間の番号を選んでください。 – Cameron