【问题标题】:How to configure web config for hosting AJAX enabled WCF over HTTP for web application?如何为 Web 应用程序托管启用 AJAX 的 WCF over HTTP 配置 Web 配置?
【发布时间】:2011-09-01 06:18:14
【问题描述】:

我制作了简单的启用 AJAX 的 WCF,它在 localhost 上运行,但是当我尝试通过 HTTP 时,WCF 没有运行。如何配置 Web 配置以使其通过 HTTP 托管?我的 Web 配置创建了自动添加 WCF 并在 localhost 上运行:

<system.serviceModel>
    <behaviors>
      <endpointBehaviors>
        <behavior name="ASPXCommerceWCFServiceAspNetAjaxBehavior">
          <enableWebScript />
        </behavior>
      </endpointBehaviors>
    </behaviors>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
    <services>
      <service name="ASPXCommerceWCFService">
        <endpoint address="" behaviorConfiguration="ASPXCommerceWCFServiceAspNetAjaxBehavior"
          binding="webHttpBinding" contract="ASPXCommerceWCFService" />
      </service>
    </services>
  </system.serviceModel>

【问题讨论】:

  • 您的客户端是否在本地主机上运行,​​而服务在另一台机器上?你不能像那样进行跨域调用。
  • 是的我知道但不知道如何配置请提供配置示例代码

标签: jquery asp.net wcf web-services httpwebrequest


【解决方案1】:

听起来您正在尝试进行跨域调用,现代浏览器会阻止该调用。似乎有一些解决方法:

Cross-site ajax call to a WCF Service

JSONP

Cross-Domain AJAX Enabled WCF Service

【讨论】:

  • 调用跨域我稍后考虑过.. 但现在我需要知道通过 htttp 托管它...
  • 你说它在本地主机上运行,​​对吧?我假设您使用的是 http://localhost 之类的东西 - 它通过 HTTP 运行。如果您的客户端应用程序在您的本地计算机上,并且您将服务托管在 另一台 计算机上 - 例如 http://somemachine/,您将不得不处理跨域调用。
  • 是的,我明白了...但我认为您没有遇到我的问题..ive 域 www.domain.com 并且 ive 仅在此域中托管 svc,以便函数可以调用此服务和运行..现在我无法接收该服务?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-06-19
  • 1970-01-01
  • 2018-05-14
  • 1970-01-01
  • 2015-07-10
  • 2015-04-05
  • 2010-12-29
相关资源
最近更新 更多