C # - использование веб-службы REST через https

2

Какой лучший способ использовать безопасный веб-сервис REST на С#? Имя и пароль веб-службы указаны в URL-адресе...

  • 6
    Веб-служба, использующая имя пользователя и пароль, указанные в URL-адресе, небезопасна.
Теги:
rest
web-services
https

4 ответа

5

Несколько параметров:

Класс HttpWebRequest. Мощный, но иногда сложный в использовании.

Класс WebClient. Меньше функций, но они должны работать для более простых веб-сервисов и намного проще.

Новый HttpClient в WCF REST Starter Kit. (The Starter Kit - отдельная загрузка, а не часть .NET Framework).

  • 0
    Класс HttpClient отлично.
2

Используйте класс WebRequest, чтобы запрос и HttpWebResponse получили ответ.

Я использовал следующий код для использования webservice.My имя пользователя, пароль и Url сохраняются в переменных UserName, Pwd и Url соответственно.

WebRequest Webrequest;
HttpWebResponse response;

Webrequest = WebRequest.Create(Url);
byte[] auth1 = Encoding.UTF8.GetBytes(UserName + ":" + Pwd);
Webrequest.Headers["Authorization"] = "Basic " + System.Convert.ToBase64String(auth1);
Webrequest.Method = "GET";
Webrequest.ContentType = "application/atom+xml";

response = (HttpWebResponse)Webrequest.GetResponse();
Stream streamResponse = response.GetResponseStream();
StreamReader streamReader = new StreamReader(streamResponse);
string Response = streamReader.ReadToEnd();

Строка ответа будет доступна в переменной Response.

1

Я надеюсь, что пароль в URL-адресе зашифрован:). Возможно, это поможет вам:

http://social.msdn.microsoft.com/forums/en-US/wcf/thread/3c8db0bf-984e-426b-b068-d80165ed1b37/

0

Основываясь на небольшой информации, которую вы предоставили, я бы сказал, что использование класса HttpWebRequest - ваш лучший вариант.

Он относительно прост в использовании, есть много примеров того, как его использовать, и он будет работать с любым медиа-типом, который предоставляет интерфейс REST. У вас есть полный доступ к кодам статуса Http и заголовкам Http.

Что еще вы можете попросить?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню