c#客户端到Java服务的http头

c#客户端到Java服务的http头,c#,web-services,http,http-headers,http-authentication,C#,Web Services,Http,Http Headers,Http Authentication,嗨,我一直在尝试在c#中向webclient添加http头,我一直在寻找很多地方,运气也不好经常有人指向凭据类,但是我只有ClientCredentials我的客户端也缺少预验证字段 该服务是用Java编写的,我可以向其中添加http头,如下所示 reqHeaders.put(HEADER_NAME_USERNAME, Collections.singletonList(USER_NAME)); reqHeaders.put(HEADER_NAME_PASSWORD, Collections.s

嗨,我一直在尝试在c#中向webclient添加http头,我一直在寻找很多地方,运气也不好经常有人指向凭据类,但是我只有ClientCredentials我的客户端也缺少预验证字段

该服务是用Java编写的,我可以向其中添加http头,如下所示

reqHeaders.put(HEADER_NAME_USERNAME, Collections.singletonList(USER_NAME));
reqHeaders.put(HEADER_NAME_PASSWORD, Collections.singletonList(PASSWORD));
((BindingProvider) webWS).getRequestContext().put(MessageContext.HTTP_REQUEST_HEADERS,reqHeaders);
然而,我不知道如何在c中实现这一点,我尝试了端点地址生成器、ClientCredential、windows.ClientCredential,基本上任何我能找到用户名和密码的方法 当我用java发出请求时,我用wireshark捕获http数据包 看起来像这样

+hypertext transfer protocol
+POST
  post stuff
 Password: mypass
 Username: username
 soapaction: ... and so on
我无法更改服务器端代码我只知道我是否可以添加两个标题,一个名为username,一个名为password,其值为ill be shening(读取:winning)

这主要解决了我的问题,而不是编辑app.config,尽管我在下面添加了新定义的行为类


添加(新的CustomBehavior(params))

你在为你的客户使用什么?WCF,SoapHttpClientProtocol(又名asmx),使用HttpWebRequest滚动您自己的请求?@CheeZe5我通过在标准控制台应用程序项目中添加服务引用来访问它,而不是创建新的webservice对象ServiceReference1.WebsiteWSClient ws=nw。。。。并取消像ws.readCurrentData()这样的请求;