问题标签 [wshttpbinding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5812 浏览

wcf - 使用 ServiceHostFactory 时出现“安全支持提供程序接口 (SSPI) 协商失败”

我最近开始使用自定义 ServiceHostFactory,因为我想在 WCF 中使用依赖注入。我的客户端和服务都在我的本地计算机上从 VS2010 运行,并且该服务正在使用 ASP.NET 开发服务器。为什么我现在有这个问题?过去,我在 wsHttpSecurity 上取得了成功,在我的本地计算机上同时拥有客户端和服务。我真的认为这里唯一的区别是使用了 ServiceHostFactory。我试过使用 userPrincipalName 属性,但我什至不确定我应该为这个值输入什么。应该是机器名\用户名吗?这个属性会有所不同吗?我会非常感谢您提供的任何帮助。

0 投票
1 回答
1547 浏览

php - 带有 wsHttpBinding 和 x509 证书的 WCF 服务 - 我可以使用 VB/C# WITH PHP 使用/连接吗?

我们连接到另一家公司托管的 Web 服务。我们将客户的基本信息发送到服务,它会回复该客户的费率/价格。

我是一个 PHP 人——开始使用基本的 HTML,然后在大约 8 年前深入研究 PHP,我的整个 Web 应用程序都是 PHP,并根据需要混合了 javascrtipt/ajax。我是一个边学边学的人。

在过去的两年中,该服务一直是一个 aspx Web 服务,这很简单——只需连接 PHP 的 SoapClient。现在托管服务的公司已经改成WCF了,绑定的是wsHttpBinding,认证是通过x509认证的。

我已经确定 PHP 的 SoapClient 无法处理 wsHttpBinding。所以我的第一个障碍——我到底如何连接到这项服务?我什至安装了 MS Visual Web Developer 2010 Express,然后我使用 svcutil.exe 为该服务创建了 .config 和 .cs 文件。但是请理解,我从来没有用 C# 或 VB 写过任何东西。我过去做过一些小的 VBScript,我可以处理 javascript……但我正在查看这些 .config 和 .cs 文件并思考,现在我该怎么处理这些?

基本上,我只想使用 PHP 和 javascript 连接到该服务。但既然这似乎是不可能的(正确的?),有没有办法可以从我的 PHP 脚本中调用 VB/C# 操作?例如,从 mysql 中提取客户信息并使用 PHP 为服务准备数据,然后使用 VB/C# 连接并与服务通信?还是有更好的想法?

非常感谢所有提示/想法/建议!

0 投票
0 回答
823 浏览

wcf - 您是否需要为 WS-AT 打开客户端防火墙才能使用 WCF?

我在尝试使用 SSL 证书通过 Internet 从 WCF -> WCF 进行通信时遇到以下错误。我在服务器上的 WS-AT 配置中检查了“不需要身份验证”。

几秒钟后,我在客户端上收到以下消息,并试图找出我的配置(或对 WS-AT 的理解)有什么问题。

无法解组流式事务。发生以下异常: WS-AtomicTransaction 协议服务无法解组流事务。发生以下异常:收到代码为 CoordinatorRegistrationFailed 的故障回复。故障原因如下: WS-AT 协议服务向其协调器注册失败。连接不能建立。

查看服务器上的日志文件,我找到了指向http://msdn.microsoft.com/en-us/library/aa702582(VS.90).aspx的链接和以下跟踪消息

Microsoft.Transactions.TransactionBridge.RegistrationCoordinatorFailed 如果本地 TransactionManager 由于无法发送消息而无法向其上级 TransactionManager 注册,则跟踪。

所以我想知道......服务器是否试图通过与客户端最初建立的 SSL 连接不同的通道与客户端通信。我很确定这就是它试图让我最终收到这条消息的原因。客户端是我的笔记本电脑(目前在星巴克),所以没有任何传入连接的机会。

那么是否可以在只有服务器具有开放防火墙的情况下使用 WS-AT 事务?假设这是可能的 - 我必须做些什么才能允许它?我发现关于必要配置的信息非常少——即使在我庞大的 Programming WCF 书中也是如此。


奖励:对于任何试图让 WS-AT 工作的人来说,这里有一些小技巧:

  • 如果在尝试安装 WS-AT 选项卡时无法显示它 - 并且您正在运行 x64 操作系统 - 请确保您使用的是x64 版本的 RegAsm.exe:C:\Windows\Microsoft。 NET\Framework64\v2.0.50727\RegAsm.exe /codebase wsatui.dll
  • 如果一旦安装 WS-AT,为传入连接配置它并重新启动 MCAT,您仍然会收到有关协议被禁用的错误,您可能忘记重新启动 IIS(!)
0 投票
1 回答
1507 浏览

java - 轴 2 Web 服务:http 绑定的空参数问题

我正在尝试使用axis2 开发Web 服务。问题是我没有得到在 url 中传递的用于 http Binding 的参数。

这是我的 service.xml :

这是我的简化 wsdl :

最后是 my.package.MyClass :

当我使用请求http://urlToService/getUser?id=test调用服务时,我输入了 getUser(String id) 但 id 为空。

有人知道我应该如何解决这个问题吗?

谢谢

0 投票
2 回答
2798 浏览

wcf - netTcpBinding 怎么会比 wsHttpBinding 慢?

我已经实现了一个场景,它使用 netTcpBinding 和 WsHttpBinding 和传输安全(https)作为 WCF 中的通信绑定类型。然后我比较了性能结果。有趣的是,netTcpBinding 比 wsHttpBinding 慢。我已经阅读了很多关于绑定性能的文档,并且我知道 netTcpBinding 由于二进制编码而提供了最快的通信。

你能解释一下我的测试中可能导致这种情况的原因吗?谢谢。

测试环境:IIS 7

0 投票
1 回答
5861 浏览

wcf - WCF 服务绑定 wsHttp 与没有身份验证的基本

我正在尝试使用匿名身份验证创建 WCF 服务。当我将服务部署到不在我当前域上的目标服务器时,我在尝试调用它时收到以下错误:

内容类型应用程序/soap+xml;服务http://myserver.com/page.svc不支持 charset=utf-8 。客户端和服务绑定可能不匹配。

就目前而言,我的 web.config 文件中有以下部分用于服务:

我一直在尝试各种绑定(wsHttpBinding 和 basicHttpBinding),但要么收到上述错误(使用 basicHttpBinding),要么收到“拒绝访问”消息(使用 wsHttpBinding)。这是我在使用 wsHttpBinding 时尝试使用的 web.config 部分

该服务是使用 .NET 4.0 框架创建的。我需要它是匿名的,但我不确定我错过了什么。我是 WCF 的新手,所以我还没有把所有的鸭子排成一排。

谢谢,

0 投票
1 回答
571 浏览

transactions - 是否有人使用 WS-AtomicTransaction 协议通过 Internet 在 WCF 中传播事务?

只是好奇,是否有人在生产中使用 WS-AT 协议通过 Internet 传播 WCF 中的事务(wsHttpBinding)?很难部署/支持吗?保持 WS-AT 端口打开是一种好方法吗?或者最好有一个自定义的解决方案来支持交易?你怎么看?

0 投票
1 回答
337 浏览

wcf - WCF wsHttp 绑定,对于 clientCredentialType,我应该使用 Basic 还是 Windows?

我有几个 WCF wsHttp 服务通过 SSL 连接使用传输安全性。目前,我对 clientCredentialType 使用“Windows”,除了我的电子商务网站(它自己的 SSL)通过 SSL 与另一台服务器通信时出现问题并且我不得不创建一个单独的服务并使用clientCredentialType 的基本类型。

我不想要匿名连接,因此我在 WCF 服务站点上的 IIS 7.5 中启用了基本和 Windows 身份验证。

在安全性方面,一个比另一个更好吗?Windows 与 Basic?如果不是,那么似乎我应该将所有内容都更改为基本,然后我可以消除电子商务问题的重复服务配置。

我不使用 ActiveDirectory,我只是想尽量减少有人嗅探电话的所有风险。有人对我应该使用的 clientCredentialType 设置有意见吗?

谢谢你。

0 投票
1 回答
2667 浏览

c# - 使用 WSHttpBinding 时检索 WCF 自动设置的 MessageId

我使用 WCF 来使用尊重 WS 表单的 Web 服务(然后我使用 WSHttpBinding 绑定)。这种形式涉及MessageID在soap请求的标头中设置一个,并且该RelatesTo字段的响应标头中存在相同的id。我想记录我与此 MessageId 一起发出的请求,但找不到检索 WCF 设置的 messageId 的方法,我可以手动设置它。我设法通过在字段上设置正确的属性来从响应中获取它,但是在请求上这样做让我设置它,但似乎 WCF 覆盖它并且在调用后不让我访问新值事件。

任何的想法 ?

0 投票
3 回答
2048 浏览

.net - WCF Custom Authentication Provider

I am trying (desperately) to get a customer authentication provider working for my WCF service. So far I have the following code;

web.config

Custom authenticator class;

Everything compiles ok, but when I use the WCF test client from visual studio to call a method called Ping (below), the custom authenticator never gets used. The Ping method just executes and any breakpoint I have in my CustomUserNameValidator class.

Why would this be? All help appreciated.