Мне нужно отправить некоторые данные с сервера SQL DB во внутренней сети на внешний веб-сервер.
Я надеялся выполнить это, написав приложение VB.NET, которое вызывается один раз в день, который отправляет около 1 МБ данных в PHP-скрипт на веб-сервере, где он хранится в базе данных.
Что такое хороший метод отправки данных в PHP-скрипт из приложения .NET?
Вы можете использовать класс HTTPWebRequest для публикации файла на ваш php-скрипт так же, как и в браузере. Если файл, который вы отправляете, основан на тексте, например XML или CSV, можно сделать простой пост. Однако, если вам нужно отправить двоичные данные, вы можете либо закодировать его base64, либо затем декодировать его на другом конце PHP, либо опубликовать его как файл, используя многочастные формы . Если у вас нет конкретной причины использовать многочастные формы, вероятно, это не стоит лишних неприятностей, и вы, вероятно, должны просто кодировать свои данные с помощью base64.
Веб-сервисы – это путь, возможно, SOAP через XML, чтобы напрямую передавать данные на PHP.
Если вы поедете по маршруту middaparka, вы не нажимаете его прямо на PHP, а просто делаете его доступным для PHP с помощью оператора include. Если вы хотите, чтобы PHP обрабатывал данные сразу же после их получения, вам, вероятно, понадобится первый вариант.
Если вы после надежного средства, у меня возникнет соблазн использовать FTP как средство передачи данных, а не HTTP – это упростит управление с точки зрения обработки ошибок и т. Д., Особенно если вы будете следовать некоторым такие как загрузка файлов во временную папку, а затем перемещение (переименование в терминах FTP) их в папку пикапа после завершения загрузки.
С точки зрения конкретных функций и т. Д. PHP имеет широкий спектр связанных с FTP функций ( ключевые документы здесь ). Я, к сожалению, не осведомлен о соответствующих битах платформы .NET и бобах, но я уверен, что кто-то здесь укажет вам в правильном направлении, если MSDN не доставляет товар.
Возможно, вы захотите использовать JSON или XML.
Другая идея может заключаться в том, чтобы выполнить запрос HTTP PUT на веб-сайт на основе PHP и передать ваши данные.
Найти здесь, как принять контент, отправленный через HTTP. Поместить в PHP http://php.net/manual/en/features.file-upload.put-method.php
См. Здесь, как вы можете выполнить запрос HTTP PUT из .net-приложения http://www.java2s.com/Code/CSharp/Network/HTTPputwithusernameandpassword.htm