でファイルのアップロードを投稿するときは、私は次のコード422処理不能エンティティ応答Clojureの
(POST "/uploads" request
(let [filename (get-in request [:params "file" :filename])
file (get-in request [:params "file" :tempfile])
url (str "https://REDACTED.zendesk.com/api/v2/uploads.json?filename=" filename)]
(clj-http.client/post url {:headers {"Content-Type" “application/binary”}
:multipart-params [{:name "file"
:content file
:mime-type "application/binary”}]})
でこのカールリクエスト
curl "https://{subdomain}.zendesk.com/api/v2/uploads.json?filename=myfile.dat&token={optional_token}" \
-v -u {email_address}:{password} \
-H "Content-Type: application/binary" \
--data-binary @file.dat -X POST
をエミュレートしようとしていますが、私は「422加工不能エンティティの応答を取得していますZendeskから。ファイル/一時ファイルは、要求に応じて#object[java.io.File 0x3768306f "/var/folders/l3/7by17gp51sx2gb2ggykwl9zc0000gn/T/ring-multipart-6501654841068837352.tmp"]
として入力されています。
Saving an image form clj-http request to fileで述べたように、私はclojure.java.io強制(たとえばclojure.java.io/output-stream
)でプレイしましたが、それは役に立ちませんでした。
(私はZendeskへの直接アップロードがポストマンを通じて仕事を得ることができますので、PS。私はかなり確信している私はのauthする必要はありません。)