2012-05-17 1 views
0

Я хотел бы добавить пакет с файлом csv на работу в salesforce.com, согласно docs. Я использую следующий код, чтобы сделать это, но он не работает (нет новых объектов не появляются в отдела продаж):Прикрепить файл csv к запросу django

headers = { 
     'Content-Type': 'text/csv; charset=UTF-8', 
     'X-SFDC-Session': client.sessionId 
    } 
    (_, host, path, _, _, _) = urlparse("https://%s/services/async/24.0/job/%s/batch" % (instance, job_id)) 
    csv_file = open('test.csv', "rb") 
    t = csv_file.read() 
    conn = httplib.HTTPSConnection(host) 
    conn.request("POST", path, t, headers) 
    response = conn.getresponse() 
    rawResponse = response.read() 

Как я могу прикрепить файл запрос и отправить его?

+0

Вы хотите прикрепить файл к ** запросу **, как в прикрепленном файле к ** conn.request **? Или вы хотите прикрепить файл к ответу ** django **? Мне интересно, если это вопрос о httplib или django ... теги указывают «django», а не «httplib» – jpic

+0

@jpic: я хочу отправить файл на salesforce.com, поэтому я хочу приложить его для запроса не ответа , Вы правы в отношении тегов. – szaman

ответ

1

Вещь с протоколом HTTP заключается в том, что для создания HTTP-запроса с прикрепленным двоичным содержимым требуется некоторый шаблонный шаблон.

Либо используйте poster lib, либо используйте нижний уровень code snippet как есть plenty.

1

записи не обрабатываются до тех пор, пока вы не обновите статус задания, чтобы указать, что вы загрузили все партии в задание. см. quickstart in the docs