Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > Вконтакте загрузка музыки


Автор: DoZENT 14.5.2010, 15:50
Помогите пожалуйста с задачей. Нужно выгрузить аудио файл в контакте. Для этого там  используется такая форма:
Код

 <form action="http://cs4605.vkontakte.ru/upload.php" enctype="multipart/form-data" id="uploadForm" name="uploadForm" method="POST">
  <div id="audioUpload">
    <input type="file" size="30" id="file" name="file"/>
    <input type="hidden" id="act" name="act" value="add_audio" />
    <input type="hidden" id="aid" name="aid" value="0" />
    <input type="hidden" id="gid" name="gid" value="17322541" />
    <input type="hidden" id="mid" name="mid" value="80161131" />
    <input type="hidden" id="vk" name="vk" value="" />
    <input type="hidden" id="hash" name="hash" value="0f7015fcb9676185f03f63368308c8d7" />
    <input type="hidden" id="rhash" name="rhash" value="c809e4c8c986eeff3a26c52a5d7bd9aa" />
  </div>


В delphi делаю так:
Код

    multi.AddFormField('method','post');
    multi.AddFile ('file',pMp3Path,'audio/mpeg');
    multi.AddFormField('act','add_audio');
    multi.AddFormField('aid',aid);
    multi.AddFormField('gid',gid);
    multi.AddFormField('mid',mid);
    multi.AddFormField('vk','');
    multi.AddFormField('hash',hash);
    multi.AddFormField('rhash',rhash);

    HttpClient.Request.UserAgent := 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2) Gecko/20100115 Firefox/3.6';
    HttpClient.Request.Accept := 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
    HttpClient.Request.Referer := 'http://vkontakte.ru/audio.php?act=new&gid='+gid;
    HttpClient.Request.ContentType:='multipart/form-data';

    try
      HttpClient.Post (server,multi,s);
    except
    end;


После этого в HttpClient.Response.Location по идеи должна вернуться ссылка на загруженный mp3 файл, по которой нужно перейти, чтобы подтвердить загрузку файла. Однако, это поле пустое. Уже несколько дней бьюсь...

Автор: DoZENT 19.5.2010, 18:03
Разобрался. Надо было у idHttp отключить редирект, может кому поможет

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)