2016-08-17 6 views
0

Я немного новичок в ASP.NET и веб-разработки, и я до сих пор путают о следующем:клиента с помощью HttpRequest

С одной стороны, я очень полный веб-сайт ASP.NET MVC на основе NopCommerce, которая включает логин, регистрацию, функции электронной коммерции, форумы и т. Д.

С другой стороны, у меня есть клиентское приложение Windows Forms, которое необходимо читать и записывать данные из базы данных моего сайта и в мою базу данных.

Первое, что мне нужно сделать, это разрешить пользователям входить в клиентское приложение, отправив запрос на сервер. Я смотрю вокруг Интернета в течение нескольких дней, и я не могу найти точный и безопасный способ сделать это.

Я очень уверен, что мне нужно использовать System.Net.Http, чтобы сделать запрос от клиента. Будет ли этот запрос обрабатываться с помощью действия контроллера MVC? Может быть, уже существующий?

Вот метод, который я до сих пор, на основе учебника найти в Интернете (это не полный вообще):

private static async void PostRequest(string addressPost) 
{ 
    IEnumerable<KeyValuePair<string, string>> queries = new List<KeyValuePair<string, string>>() 
    { 
     new KeyValuePair<string, string>("Query1", "Email"), 
     new KeyValuePair<string, string>("Query2", "Password") 
    }; 
    HttpContent formContent = new FormUrlEncodedContent(queries); 
    using (HttpClient client = new HttpClient()) 
    { 
     using (HttpResponseMessage response = await client.PostAsync(addressPost, formContent)) 
     { 
      using (HttpContent content = response.Content) 
      { 
       string myContent = await content.ReadAsStringAsync(); 
       System.Diagnostics.Debug.WriteLine(myContent); 
      } 
     } 
    } 
} 

Любой существующий пример или помощь будет принята с благодарностью.

+0

Не могли бы вы попытаться быть более конкретными в отношении своей проблемы, здесь есть много текста, который выглядит в основном просто шумом. – thecoshman

+0

Предположим, что я ищу основную процедуру, которая позволяет клиенту войти в приложение, попросив удаленный сервер проверить его личность. –

ответ

1

Сначала нам нужно сосредоточиться на архитектуре приложения, у нас есть два приложения: 1) веб-приложение, 2) приложение WinForm. и вы хотите поделиться одним и тем же дБ для обоих, вот недостатки этого, вы могли бы оказаться в один прекрасный день, когда ваша winform заблокирует таблицу из-за обновления и т. д., и ваше веб-приложение потеряет доступ, это не очень хорошая идея,

вот как я это сделаю.

создать плагин для веб-приложений для вашего веб-приложения и использовать токены api для обеспечения безопасности, есть несколько доступных плагинов для api для nopcommerce, но его ограниченные функциональные возможности, поэтому я думаю, вам придется добавить некоторые методы, основанные на ваших потребностях , следующая вещь, которую вы сделаете, - это связать ваше приложение winform с вашим webapi, в этом случае ваша winform работает независимо и безопасно, в качестве дополнительной заметки вы можете иметь в своем веб-api несколько токенов для каждого пользователя, если вы хотите, , вы можете управлять этим в своем плагине web api, просто создайте таблицу, в которой вы будете хранить эту информацию с информацией о пользователях и токенами для всех, и вы можете управлять этим из веб-администратора.

+0

У меня уже есть API для моего веб-приложения (по умолчанию это настраиваемый плагин nopCommerce). Для меня не совсем ясно, как я могу заставить приложение winform и веб-приложение обмениваться информацией безопасным способом с помощью HTTP-запросов. –

+0

как насчет apitoken? отправьте вместе со всеми запросами. –

 Смежные вопросы

  • Нет связанных вопросов^_^