[英]Passing Extra Parameter to asmx webservice
我有一个已有的Web服务,具有从应用程序中调用的100多个功能。
我需要在每次调用时从应用程序向Web服务添加另一个参数(UserId)。
我将必须手动编辑所有功能的签名和来自应用程序的调用才能实现它。
有没有更好的/替代的方法,可以在每次通话时将我的用户ID发送到Web服务?
100多个方法具有不同的方法签名。 如果方法签名共享同一个对象,则可以向该对象添加额外的参数,并且至少不需要更改这些方法的参数。
否则,必须更改SOAP Header,并在每个请求的标头中附加“ UserId”。
任何我认为需要做的工作..
如果尚未启用会话,并且Web服务在同一服务器上运行。
[WebMethod(EnableSession = true)]
您可以将其存储在会话中,
Session["UserID"] = User.Identity.GetUserId<int>();
像这样访问
HttpContext.Current.Session["UserID"];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.