Загрузка AdImages ничего не делает - PullRequest
0 голосов
/ 03 мая 2020

Примечание : это НЕ дубликат


Я тестирую marketing-api на рекламной учетной записи песочницы .

Простой пример загрузки рекламного изображения из документов не работает

curl \
  -F 'filename=@<IMAGE_PATH>' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v6.0/act_<AD_ACCOUNT_ID>/adimages

Мой точный cURL запрос от Postman равен

curl --location --request GET 'https://graph.facebook.com/v6.0/act_<app_id>/adimages?filename=@/Users/y2k-shubham/Desktop/my-img-1.png&access_token=<access_token>'

Не выдает никакой ошибки, но и не загружает изображение


Что я пробовал пока что

  1. В некоторых потоках написано, что ключ имени файла arg должен быть image_file

  2. Я также пытался импортировать cURL запрос прямо в Postman без удачи

  3. Хотя в документах об этом не сказано, интуитивно для загрузки изображения я попытался сделать запрос POST вместо GET, но этот также возвратил код HTTP 200/OK со следующим ответом

    []
    

Самое худшее, конечно, то, что он возвращает код ответа HTTP 200/OK, так что нет не приводит ли это к отладке.

Куда я иду не так?


UPDATE-1

Соответствующий Java SDK вариант работал нормально.

public static void main(String[] args) throws APIException {
        String ACCESS_TOKEN = "<my-token>";
        Long ACCOUNT_ID = 1234567890L;
        String APP_SECRET = "<my-app-secret>";

        APIContext context = new APIContext(ACCESS_TOKEN, APP_SECRET);
        AdAccount account = new AdAccount("act_" + ACCOUNT_ID, context);

        String imageFilePath = "/Users/y2k-shubham/Desktop/my-img-1.png";
        File imageFile = new File(imageFilePath);
        AdImage image = account.createAdImage().addUploadFile("my_file_1", imageFile).execute();
        System.out.println("Hash = " + image.getFieldHash());
    }

Так что все еще запутался, почему не работает способ cURL.

...