【发布时间】:2020-09-30 15:06:27
【问题描述】:
所以我正在尝试将一些身份验证变量添加到我的soap 请求的标头中。对发件人进行身份验证。客户端是一个安卓应用,而服务器使用的是 asp.net 网络表单。
我在客户端使用的库是 ksoap2。我遇到的问题是,当我在服务器端重新设置我的肥皂信封并检查请求的标头时,我的自定义标头元素不存在。
唯一存在的键是 “联系” “内容长度” “内容类型” “接受编码” “主持人” “用户代理” “SOAPAction” 自定义名称为“AuthHeader”的地方(当前代码来自答案,我取自另一个线程的答案)
Java代码是这样写的
Element h = new Element().createElement(NAMESPACE, "AuthHeader");
Element username = new Element().createElement(NAMESPACE, "user");
username.addChild(Node.TEXT, "USERNAME");
h.addChild(Node.ELEMENT, username);
Element pass = new Element().createElement(NAMESPACE, "pass");
pass.addChild(Node.TEXT, "PASSWORD");
h.addChild(Node.ELEMENT, pass);
envelope.headerOut = new Element[1];
envelope.headerOut[0] = h;
webmethed 就是这样
[WebMethod]
public string ValidateRequest()
{
Console.WriteLine(HttpContext.Current.Request.Headers.AllKeys);
return "1.0";
}
谁能告诉我我做错了什么?
【问题讨论】: