</pre><pre name="code" class="csharp">客户端
ServiceTokenValidation.DinoTechDataSyncServiceClient client = new ServiceTokenValidation.DinoTechDataSyncServiceClient();
using (OperationContextScope scope = new OperationContextScope(client.InnerChannel))
{
//client.ValidateUser("demo@qq.com", "123", "");
MessageHeader LogHeader = MessageHeader.CreateHeader("LogHeader", "LogNameSpace", "qW4flQNobLQ=");
MessageHeader TokenHeader = MessageHeader.CreateHeader("TokenHeader", "TokenNameSpace", "yIRvo9Tr0UadIYa64nzCSg_NJJIblZZqug=");
OperationContext.Current.OutgoingMessageHeaders.Add(LogHeader);
OperationContext.Current.OutgoingMessageHeaders.Add(TokenHeader);
ServiceTokenValidation.ResponseStatus obj = client.SubmitRegionalAreas(new ServiceTokenValidation.Areas[] {
new ServiceTokenValidation.Areas
{
Name = "Metasys",
AreaType = 51,
ParentAreaId = null,
DisplayedOrder = 1,
Id = "15855",
},
});
Console.WriteLine(obj.Message + "\n\t" + obj.Status);
Console.WriteLine("服务方法已调用。");
}
服务器段
private int GetCompanyId()
{
try
{
int companyId = 0;
string token = Convert.ToString(OperationContext.Current.IncomingMessageHeaders.GetHeader<string>("TokenHeader", "TokenNameSpace")).Trim();
string strEncryptedCompanyId = token.Substring(token.IndexOf('_') + 1);
companyId = strEncryptedCompanyId.Decrypt();
return companyId;
}
catch (Exception ex)
{ throw ex; }
}
WCF messageheader校验头
最新推荐文章于 2021-03-24 18:35:23 发布