2016-12-15 4 views
0

В настоящее время я работаю над простым приложением, чтобы облегчить мою жизнь. Я сделал приложение Android, которое позволяет мне выбрать файл и загрузить его на сервер. Я работаю над приложением Windows PC C#, которое отправляет его ip (динамический) и его открытый порт на мой сервер. Всякий раз, когда сервер получает файл с моего телефона, я хочу, чтобы он отправил POST-запрос на мой компьютер.Как клиент C# получает http POST?

Я довольно новичок в веб-материалах (раньше я делал тонны кодирования), но насколько я понимаю, только сервер может получить запрос POST. Как я могу создать сервер C#, который работает на моем ПК с динамическим IP-адресом и получает POST-запросы?

Я боролся с этим какое-то время, просто ключевые слова, которые я должен исследовать, были бы очень полезными, спасибо.

+0

Если вы хотите, чтобы сервер ответил на ваш клиент, вы можете посмотреть в SignalR. –

+0

Также вы можете использовать Postman для тестирования RESTful api. – Johnny

ответ

0

HTTP - это протокол, позволяющий взаимодействовать с веб-серверами и клиентами. Для этого требуется, чтобы веб-сервер (IIS, Apache или другой) отвечал на запросы клиента http.

Клиент может отправлять сообщения типа GET, POST и другие.

Предпочитаемый способ отправки веб-клиента с использованием класса WebClient. Вот образец, взятый из другого ответа, данного Andrew

string URI = "site.com/mail.php"; 
using (WebClient client = new WebClient()) 
{ 
    System.Collections.Specialized.NameValueCollection postData = 
     new System.Collections.Specialized.NameValueCollection() 
     { 
       { "to", emailTo }, 
       { "subject", currentSubject }, 
       { "body", currentBody } 
     }; 
    string pagesource = Encoding.UTF8.GetString(client.UploadValues(URI, postData)); 
} 
0

Я хотел бы создать какое-то серверное приложение с помощью WebAPI, SignalIR, WCF или веб-службы ASMX. Все они могут обрабатывать связь между сервером и клиентом и упростить связь с вашим устройством.

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

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