submit формы (POST) с отправкой файла

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

natcap
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 234
Зарегистрирован: 25.06.2003 (Ср) 13:15
Откуда: Москва

submit формы (POST) с отправкой файла

Сообщение natcap » 09.06.2009 (Вт) 22:39

Мое почтение.

Пришлось переходить с 6.0 на .Net 2008
На 6.0 я использовала класс для submit-a формы (метод POST), в том числе uploada файлов через эту форму.
в .Net настолько много всего в System.Net что просто не могу разобрать что мне надо использовать и как :shock:

Задача: надо залогиниться по НТТР и передать PHP-скрипту поля формы и файл (метод POST)

Если не существует готового решения, то может кто-то сможет расписать что использовать для идентификации на сервере, что для submit-a формы, что для отлова ошибок

Заранее спасибо :)
Последний раз редактировалось natcap 17.06.2009 (Ср) 0:13, всего редактировалось 1 раз.
Медленно переезжаю с 6.0 на 2008 .... задавая тонны глупых вопросов :)

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Post form (file)

Сообщение MIT » 09.06.2009 (Вт) 22:56

Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

natcap
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 234
Зарегистрирован: 25.06.2003 (Ср) 13:15
Откуда: Москва

Re: Post form (file)

Сообщение natcap » 10.06.2009 (Ср) 1:19

Спасибо, кое что стало понятнее, но авторизция сделана как-то малость через..... да и как добавлять поля формы, upload файлa делать?
Медленно переезжаю с 6.0 на 2008 .... задавая тонны глупых вопросов :)

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: Post form (file)

Сообщение Williams » 10.06.2009 (Ср) 17:26

natcap писал(а):Спасибо, кое что стало понятнее, но авторизция сделана как-то малость через..... да и как добавлять поля формы, upload файлa делать?


Используй WebClient, много проще. Есть методы для аплоада, даунлоада, в т.ч. асинхронные. Авторизацию осуществить нетрудно.
И вы думаете, что вас оставят в живых после прочтения этого поста?

natcap
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 234
Зарегистрирован: 25.06.2003 (Ср) 13:15
Откуда: Москва

Re: Post form (file)

Сообщение natcap » 10.06.2009 (Ср) 23:10

Хм... это конечно идея... но... можно при помощи него запостить сразу несколько полей и файл?
у меня есть конкретная форма и PHP скрипт который работает именно с этой формой по определенному алгоритму. Мне надо залогиниться на сервере (обычные лог-пароль без полей в форме) и передавать значения полей

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

natcap
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 234
Зарегистрирован: 25.06.2003 (Ср) 13:15
Откуда: Москва

Re: Post form (file)

Сообщение natcap » 16.06.2009 (Вт) 14:20

итак....
авторизация сделана, отправка обычных полей тоже...
НО файл отправляться упорно не хочет... т.е wClient_UploadProgressChanged дает кол-во отосланного, wClient_UploadFileCompleted радостно рапартует о завершении закачки, ошибок не возниает, но файл на сервер не приходит реально :(

пытаюсь отправить вот такой абракадаброй:
Код: Выделить всё
        Try
            Dim myCreden As New Net.NetworkCredential(Username, Password)
            Dim mUri As Uri = New Uri(Hostname)
            wClient = New WebClient
            wClient.Credentials = myCreden
            Dim mycache As CredentialCache = New CredentialCache()
            mycache.Add(New Uri("http://edusite.ru/_ext"), "Basic", myCreden)
            wClient.Credentials = mycache
            wClient.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes(Username & ":" & Password)))
            wClient.Headers.Add("actions", "download")
            wClient.Headers.Add("filename", "filename=""" & TextBox5.Text & """")
            wClient.UploadFileAsync(mUri, TextBox5.Text)
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try


1. сервер не возвращает никакого ответа, хотя событие окночания закачки происходит (в тестовой вебформе возвращает текст)
2. ошибок тоже не происходит но при этом файл то не приходит :(((((

вопрос знатокам, где у меня ошибка, кроме как в ДНК? ;)
Медленно переезжаю с 6.0 на 2008 .... задавая тонны глупых вопросов :)


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 70

    TopList