У меня есть сборка прокси c # из wsdl.
Я пытаюсь добавить базовую аутентификацию в заголовок запроса.
Веб-сервис, который я пытаюсь вызвать, находится не в c #. (php может быть)
С помощью fiddler я вижу, что "заголовок авторизации отсутствует"
И результат моих звонков: неверное имя пользователя / пароль
Вот что я добавил в свой прокси
protected override System.Net.WebRequest GetWebRequest(Uri uri){
System.Net.HttpWebRequest request;
request = (System.Net.HttpWebRequest)base.GetWebRequest(uri);
if (PreAuthenticate){
System.Net.NetworkCredential networkCredentials =
Credentials.GetCredential(uri, "Basic");
if (networkCredentials != null)
{
byte[] credentialBuffer = new System.Text.UTF8Encoding().GetBytesnetworkCredentials.UserName + ":" + networkCredentials.Password);
request.Headers["Authorization"] = "Basic" + Convert.ToBase64String(credentialBuffer);>
}
else
{
throw new ApplicationException("No network credentials");
}
}
return request;
}