Создайте задание с вложениями в Asana, используя Asana api - PullRequest
0 голосов
/ 26 декабря 2018

Я пытаюсь отправить изображение с помощью API Асаны, но оно просто прикрепляет пустой файл.Это код, который я использовал.

client.attachments.create_on_task(task_id=123456789,file_content="Url_of_file",file_name='Name_of_File',file_content_type="image/jpeg")

Я пробовал использовать разные форматы файлов, такие как .txt и .png, но по какой-то причине API-интерфейс Asana блокирует мои запросы. Он просто отправляет черное изображение наАсана.Я также пытался преобразовать файл в base64, но он все еще не работает

В этой оригинальной документации (ниже) показано, что нам нужно передать два аргумента: один для содержимого файла, а другой -для самого файла ('file').

def create_on_task(self, task_id, file_content, file_name, file_content_type=None, **options):
        """Upload an attachment for a task. Accepts a file object or string, file name, and optional file Content-Type"""
        path = '/tasks/%d/attachments' % (task_id)
        return self.client.request('post', path, files=[('file', (file_name, file_content, file_content_type))], **options)

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

Может кто-нибудь помочь мне сэто?

1 Ответ

0 голосов
/ 23 марта 2019

У другого пользователя на форуме разработки Asana та же проблема с использованием Curl API.(https://forum.asana.com/t/sending-file-with-api/16897/2). По-видимому, это как-то связано с «многочастной загрузкой формы».

Просмотр другого потока здесь на stackoverflow ( Как отправить «multipart / form-data» сзапросы в python? ), казалось, что объект файла должен быть прочитан в двоичном формате.

...