背景
我们有一个托管在Windows服务中,使用basicHttpBinding运行的WCF Web服务。
问题
在本地计算机上浏览服务URL可以正常工作,但尝试使用外部IP地址进行浏览(无论是远程还是本地)都无法工作。例如:
http://localhost:8000/booking.svc
(正常)
http://<external-IP>:8000/booking.svc
(不正常)
APP.CONFIG
<system.serviceModel>
<services>
<service behaviorConfiguration="DefaultServiceBehavior" name="HotelManagementSystem.ServiceHost.BookingService">
<endpoint address="" binding="basicHttpBinding" contract="HotelManagementSystem.ServiceHost.IBookingService" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8000/booking.svc" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="DefaultServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="True" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
Anyone have any ideas?
baseAddress="http://external-ip:8000/booking.svc"
的条目是否允许您连接?(我使用useRequestHeadersForMetadataAddress
非常成功) - Brad ChristieuseRequestHeadersForMetadataAddress
的东西非常出色。谢谢!如果您将其添加为答案,我将很高兴将其标记为解决方案。 - Matt