1

我看过很多例子,甚至以前在一些 WCF 代码上工作过,可能还没有完全理解它。现在我正在尝试自己实现它,我似乎无法让它工作,所以我正在寻找一些技巧!

这是我的情况:

好 - 我可以构建服务库并将其托管在服务应用程序或 IIS7 中,这两种方法都给了我成功的结果,因为我可以通过在浏览器中输入 .svc 文件的位置来查看服务。

不好 - 我需要通过 javascript 连接到服务,但是通过 json 连接到 localhost 会给我“无传输”,或者如果我尝试通过 jsonp 连接到我的托管服务器给我“成功”但响应未定义(应该是你好世界回应..)

这是我在服务上的配置文件:

<?xml version="1.0"?>
<configuration>

  <system.web>
    <compilation debug="true" targetFramework="4.0" />
  </system.web>
  <system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <serviceMetadata httpGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
   <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
 </system.serviceModel>
 <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>

</configuration>

这是我的json JS:

$.ajax({
    url: "http://10.8.8.53/Schools/SchoolsService.svc/TestSchoolVal1",
    dataType: "json",
    timeout: 10000,
    data: "4",
    type: "POST",
    success: function (data, textStatus, jqXHR) {
    },
    error: function (jqXHR, textStatus, errorThrown) {
    },
    complete: function (jqXHR, textStatus) {
    }
});

jsonp 代码相同,只是使用 jsonp 而不是 json 并定义了 jsonpcallback 函数。

有什么建议么?我需要同时获取本地主机和我的 IIS7!

我还尝试在 Visual Studio 中包含外部引用,它会生成更多 web.config - 但我想通过 javascript 访问 svn,而不是后端代码!

更多信息:服务命名空间是 SchoolsWCF,类是 Service1,服务文件是 SchoolsService.svc,方法是采用 int 参数的 TestSchoolVal1,本地主机托管应用程序是 Windows 控制台应用程序。

4

0 回答 0