Dokładnie teraz, mam moje uwierzytelniania WebService ale robiłem to wywołanie metody wewnątrz WebMethod, tak:WebService Główki Authentication
[WebMethod]
[SoapHeader("LoginSoapHeader")]
public int findNumberByCPF(string cpf)
{
try
{
LoginAuthentication();
var retRamal = DadosSmp_Manager.RetornaRamalPorCPF(cpf);
var searchContent= String.Format("CPF[{0}]", cpf);
DadosSmp_Manager.insertCallHistory(retRamal, searchContent);
return retRamal.Ramal;
}
catch (Exception ex)
{
Log.InsertQueueLog(Log.LogType.Error, ex);
throw getException(ex.TargetSite.Name, cpf);
}
}
chcę teraz uwierzytelniać to WebMethod bez nazywają „LoginAuthentication () ", używając tylko nagłówka SOAP - SoapHeader (" LoginSoapHeader ") - znajdującego się powyżej kodu.
Następnie, moje pytanie brzmi, w jaki sposób mogę uwierzytelnić mój WebMethod tylko za pomocą nagłówków?
Z góry dziękuję.
Czy * naprawdę potrzebne * jest użycie starego protokołu SOAP? Istnieje wiele alternatyw, które używają tylko HTTP. Na przykład Web API, który jest cienki, elastyczny i pozwala na łatwe wdrażanie różnych scenariuszy uwierzytelniania (patrz [tutaj] (http://www.asp.net/web-api/overview/security)). – Oleg
Nie jest to naprawdę potrzebne, ale chcę się tego nauczyć za pomocą SOAP. – guisantogui
Moim zdaniem SOAP nie działa. Myślę więc, że nauka SOAP jest bliska pracy autopsisty. Czy podążasz za czystymi celami edukacyjnymi lub masz jakiś problem, który próbujesz wdrożyć za pomocą SOAP? – Oleg