当前位置: 首页 > 知识库问答 >
问题:

使用带有Ajax请求的Wcf服务时出现配置文件错误

钱修雅
2023-03-14

我在使用jquery使用WCF服务时遇到了一个问题。我在system.serviceModel/bindings/webHttpbinding中遇到错误“Configuration binding extension”“system.serviceModel/bindings/webHttpbinding”。请验证此绑定扩展已在system.serviceModel/extensions/bindingExtensions中正确注册,并且拼写正确

这是我的网页。配置文件

<system.web>
    <compilation debug="true" targetFramework="4.0" />
  </system.web>
  <system.serviceModel>
    <bindings>
      <webHttpBinding>
        <binding name="webHttpBindingWithJsonP" crossDomainScriptAccessEnabled="true" />
      </webHttpBinding>
    </bindings>
    <behaviors>
      <endpointBehaviors>
        <behavior name="RestfulServiceBehavior">
          <webHttp helpEnabled="true"/>
        </behavior>
      </endpointBehaviors>
      <serviceBehaviors>
        <behavior name="WebServiceBehavior">

          <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
          <serviceMetadata httpGetEnabled="true"/>
          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
          <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <services>
      <service name="WcfService1.RestfulServiceImp" behaviorConfiguration="WebServiceBehavior">
        <endpoint address="" behaviorConfiguration="RestfulServiceBehavior" 
             bindingConfiguration="webHttpBindingWithJsonP" binding="webHttpbinding" contract="WcfService1.IRestfulServiceImp"/>
        <!--<endpoint address="mex" binding="mexHttpBinding" contract="WcfService1.IRestfulServiceImp"/>-->
        <endpoint address="soap" binding="basicHttpBinding" contract="WcfService1.IRestfulServiceImp"/>
      </service>
    </services> 
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"  aspNetCompatibilityEnabled="false"/>

  </system.serviceModel>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
    <httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
        <add name="Access-Control-Allow-Headers" value="Content-Type" />
      </customHeaders>
    </httpProtocol>
  </system.webServer>
  <system.diagnostics>
    <sources>
      <source name="System.ServiceModel"
          switchValue="Information, ActivityTracing"
          propagateActivity="true">
        <listeners>
          <add name="xml"
   type="System.Diagnostics.XmlWriterTraceListener"
   initializeData="c:\log\Traces.svclog" />
        </listeners>
      </source>
    </sources>
  </system.diagnostics>

这是我的服务名称RestfulServiceImp,我的合同是IRestfulServiceImp,请您提供宝贵的建议。

提前谢谢。

共有2个答案

从阎宝
2023-03-14

我现在没有打开的VS可以查看,但请确保该案例并不重要。

'system.serviceModel/bindings/webHttpbinding

vs

<webHttpBinding>

编辑:所以我打开了VS并将绑定名称改为小写,得到了相同的错误。尝试修正你的案例差异。

姜淇
2023-03-14

您的配置中有一个案例不匹配,

<bindings>
      <webHttpBinding>
        <binding name="webHttpBindingWithJsonP" crossDomainScriptAccessEnabled="true" />
      </webHttpBinding>
    </bindings>

<endpoint address="" behaviorConfiguration="RestfulServiceBehavior" 
             bindingConfiguration="webHttpBindingWithJsonP" binding="webHttpbinding" contract="WcfService1.IRestfulServiceImp"/>
        <!--<endpoint address="mex" binding="mexHttpBinding" contract="WcfService1.IRestfulServiceImp"/>-->
        <endpoint address="soap" binding="basicHttpBinding" contract="WcfService1.IRestfulServiceImp"/>

检查webHttpBinding中的大小写差异。。您使用了webHttpbinding而不是webHttpbinding。

 类似资料:
  • 问题内容: 我有这个应用程序,它可以在本地运行,并且在部署时可以使用.mdf SQL Express数据库文件(通常用于测试目的)。但是,当我将其更改为可与我们的SQL Server 2008一起使用时,该应用程序可以运行,但该服务无法运行。 例如,如果在页面后面的代码中,我有一个按钮可以向表中添加数据,例如: 我的web.config设置为在该服务器上使用模拟,并且一切运行良好。但是,对于我的服

  • 我正在尝试使用ajax发送post请求,但始终出现以下错误: XMLHttpRequest无法加载http://192.168.1.123:8080。对预检请求的响应无法通过权限改造检查:请求的资源上不存在“访问控制允许源”标头。因此不允许访问源“http://localhost:8080”。 这是我的代码

  • 我试图在Spring Boot中使用SOAP web服务。我可以使用Spring MVC应用程序(使用web.xml而不使用Spring boot),但是我在使用Spring boot xml free Setup进行配置时遇到了困难。 下面是我的示例服务的代码,我试图为其生成wsdl。 我的Spring Boot配置如下: 当我点击URL localhost:8080/services时,我得到

  • 问题内容: 我正在尝试使用香草JS AJAX请求从本地存储的JSON文件中拉回JSON字符串(特别是尝试不使用JQuery)-以下代码基于此答案 -但我在Chrome控制台中不断收到错误(见下文)。有什么想法我要去哪里吗?我尝试更改xhr.open和.send请求的位置,但仍然收到错误消息。我怀疑问题在于.send()请求? Chrome中的控制台抛出此错误: “ XMLHttpRequest无法

  • 问题内容: 我试图通过从slide_images文件夹中获取所有图像名称并将其附加到来动态地动态显示滑块图像。 问题答案: 最后,我通过使用json解决了这个问题。 首先,我创建getimages.php文件并读取该文件中的目录,并获取所有图像名称并将该名称存储在数组中。 getimages.php 从要动态加载图像的页面调用getimages.php。 index.php 这对我来说是完美的。

  • 问题内容: 我正在尝试使用包含CSV文件的AJAX提交表单。因此,想法是使用ajax发送表单,通过生成表在不同文件中对其进行处理,然后将处理后的表回调回页面。 我所拥有的是 JavaScript是 我在萤火虫中遇到这种错误, 我在这里做错了什么?请帮我 问题答案: 不要将文件传递到构造函数中,而应使用append,例如: