Я пытаюсь заставить метод API работать через Codfusion, который описан так:
HTTP-метод
• ПОСТ
Параметры запроса
NA
Заголовки запроса
• Принять
Тело запроса
• multipart / form-data
--85b890d4-4faf-4261-bcbb-187c4dddcbc6
Тип контента: application / vnd.emc.ax + json; кодировка = UTF-8
Content-Disposition: форма-данные; Имя = Данные
{
«Имя»: «имя партии»,
«Описание»: «описание партии»,
"Приват": false
}
--85b890d4-4faf-4261-bcbb-187c4dddcbc6
Тип содержимого: приложение / bin
Content-Disposition: форма-данные; имя = бен; имя файла = "test.pdf"; имя файла * = UTF-8''test.pdf
// содержимое файла bin
--85b890d4-4faf-4261-bcbb-187c4dddcbc6
Тип содержимого: приложение / bin
Content-Disposition: форма-данные; имя = аннотацию; имя файла = "0100002m.ano"; имя файла * = UTF-8''0100002m.ano
// содержание файла аннотации
--85b890d4-4faf-4261-bcbb-187c4dddcbc6
Тип содержимого: приложение / bin
Content-Disposition: форма-данные; имя = текст; имя файла = "test.txt"; имя файла * = UTF-8''test.txt
// содержимое файла ocr
--85b890d4-4faf-4261-bcbb-187c4dddcbc6--
Код, который я получил, возвращает:
{"ErrorCode": 9999, "Message": "Неожиданный конец многокомпонентного потока MIME. Составное сообщение MIME не завершено.", "InnerException": null}
Я проверил это через Fiddler (первая часть json, так как он не поддерживает multipart / form-data), и это было успешно. Я пробовал только часть json через coldfusion и получил ошибку, указанную выше.
Может кто-нибудь указать, где я иду не так?
Спасибо !!
Код:
<cfset desc='{
"Name": "batch name",
"Description": "batch description",
"Private": false
}'>
<cfset desc=serializejson(desc)>
<cfoutput>
<cfsavecontent variable="thestring">
Content-Type: application/vnd.emc.ax+json; charset=utf-8
Content-Disposition: form-data; name="data"
#desc#
--85b890d4-4faf-4261-bcbb-187c4dddcbc6
Content-Type: application/bin
Content-Disposition: form-data; name="bin"; filename="test.pdf"; filename*=utf-8"test.pdf"
#abbreviated_b64#
--85b890d4-4faf-4261-bcbb-187c4dddcbc6--
</cfsavecontent>
</cfoutput>
<cfhttp url="https://imagingdev.gatech.edu/AppXtenderReST/api/AXDataSources/BDEVL/axbatches/507" method="post" username="lrobinson33" password="n0t34sy!" timeout="60" result='res'>
<cfhttpparam type="header" name="Content-Type" value="multipart/form-data;boundary=--85b890d4-4faf-4261-bcbb-187c4dddcbc6"/>
<cfhttpparam type="body" value="#trim(thestring)#">
</cfhttp>