1. Apache07.05.2025 в 07:41от
Загрузка...

Загрузить изображение в вк, с помощью API [Delphi]

Тема в разделе "С/С++/Pascal/Delphi", создана пользователем Rakim, 19.11.2013.

  1. Rakim

    Rakim

    Статус:
    Оффлайн
    Регистрация:
    10.11.13
    Сообщения:
    20
    Репутация:
    3 +/-
    Пытаюсь сделать это в 3 шага.

    1 - С помощью метода photos.getWallUploadServer узнаю http-адрес для загрузки фотографии:

    silurl:=http.Get('https://api.vk.com/method/photos.getWallUploadServer.xml?group_id=*****&v=5.3&access_token=************');
    silurl:=StringReplace(silurl, 'amp;', '', [rfReplaceAll]);
    url:=ParseStr(silurl, '<upload_url>', '</upload_url>');

    2 - Формирую POST-запрос на полученный адрес:

    data := Tidmultipartformdatastream.Create;
    data.AddFile('file1', 'D:\1.jpg', 'image/jpeg');
    infoimg:=http.post(url,data);

    3 - Сохраняю фотографию после успешной загрузки на URI



    server:=ParseStr(infoimg, '"server":', ',"photo":"');
    photo:=ParseStr(infoimg, '"photo":"', '","hash"');
    hash:=ParseStr(infoimg, '"hash":"', '"}');
    http.Get('https://api.vk.com/method/photos.saveWallPhoto?server='+server+'&photo='+photo+'&hash='+hash+'&group_id=*****');


    3-ий шаг не получается. Проблема на сколько я понял из-за 2-го. Потому что ответ параметра photo километровый и 3-ый шаг просто отказывается его принимать.
    Ну это всего лишь мои догадки. Где я мог накосячить ? Помогите пожалуйста :)

    P.S. Вот что приходит в параметре photo, после 2-го шага:

    "photo":"[{\"photo\":\"d38e5353b3:x\",\"sizes\":[[\"s\",\"613518528\",\"2903\",\"PalQefUeB10\",75,75],[\"m\",\"613518528\",\"2904\",\"vck5nrVz1rw\",130,130],[\"x\",\"613518528\",\"2905\",\"fY70ICF9nl0\",500,500],[\"o\",\"613518528\",\"2906\",\"FxMI-kTo2HQ\",130,130],[\"p\",\"613518528\",\"2907\",\"Ny6DeXY-FsY\",200,200],[\"q\",\"613518528\",\"2908\",\"grqc94dnKp4\",320,320],[\"r\",\"613518528\",\"2909\",\"S6bUJh047mI\",500,500]],\"kid\":\"8c6f6ca1177753309b315b0e636680b0\"}]"
     
    Последнее редактирование: 19.11.2013
  2. leshiy)))

    leshiy)))

    Статус:
    Оффлайн
    Регистрация:
    26.05.12
    Сообщения:
    812
    Репутация:
    294 +/-
    о боже. код вообще не читаемый. ТС засунь лучше в спойлеры.
     
  3. Rakim

    Rakim

    Статус:
    Оффлайн
    Регистрация:
    10.11.13
    Сообщения:
    20
    Репутация:
    3 +/-
    Как скажешь)