【问题标题】:Why can't my test client connect to my WCF rest service?为什么我的测试客户端无法连接到我的 WCF 休息服务?
【发布时间】:2013-09-25 03:26:05
【问题描述】:

我有一个简单的 wcf 休息服务。我可以使用 WCF 测试客户端对其进行测试。

我通过 svcutil.exe 创建了自己的测试客户端。这将构建并运行。但是,它在实例化服务对象时总是给出这个异常:

找不到引用合约的默认端点元素 ServiceModel 客户端配置部分中的“IBookService”。这 可能是因为没有为您的应用程序找到配置文件, 或者因为找不到与此合同匹配的端点元素 在客户端元素中。

我基本上是按照这里的教程进行操作的: http://www.codeproject.com/Articles/571813/A-Beginners-Tutorial-on-Creating-WCF-REST-Services

在本地运行时,我也无法通过 url 访问端点。我不清楚为什么本教程在尝试从浏览器访问服务时在 url 中有一个 .svc 文件。我在任何地方都没有 .svc 文件。

【问题讨论】:

  • 您需要显示您的 app.config/web.config 相关部分。
  • 使用 webapi 中的 WCF,您可以self host without a .svc file。执行此操作的所有信息都包含在配置文件中,并且大部分内容无需执行任何操作即可发生。
  • 如果您使用的是 REST 服务,则不需要 svcutil。代理用于 SOAP 服务 - 您需要使用 HTTP API 来使用 REST 服务。
  • 如果您按照链接到的文章进行操作,则 WCFTestClient 正在测试服务的 SOAP 版本,不是 REST 版本。要测试 REST 服务,您可以使用浏览器 - 如文章所示。

标签: c# wcf rest


【解决方案1】:

WCF 测试客户端用于测试基于 SOAP 的服务(那些使用 WCF 中 webHttpBinding 以外的任何绑定的服务)。

但是,WCF 测试客户端能够使用 REST 服务。

对于 REST,请改用 Fiddler 之类的内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-20
    • 1970-01-01
    • 1970-01-01
    • 2019-10-27
    • 1970-01-01
    • 2013-02-22
    • 2011-07-10
    • 1970-01-01
    相关资源
    最近更新 更多