所以我試圖使用一個名爲Sky Biometry的api,它被用於人臉檢測和麪部識別。 api可以接受url或post作爲MIME類型。在這種情況下,我想直接將圖片發佈到api,以下是文檔所述的內容:POST mime type using curl
「注意:如果您想要POST圖像而不是指定url,那麼對方法的請求必須形成爲一個使用POST數據發送的MIME多部分消息,每個參數應該被指定爲一個獨立的表單數據塊。
我試過四處尋找例子,但還沒有找到任何,如果有人可以幫助新手出來它將不勝感激。
所以我試圖使用一個名爲Sky Biometry的api,它被用於人臉檢測和麪部識別。 api可以接受url或post作爲MIME類型。在這種情況下,我想直接將圖片發佈到api,以下是文檔所述的內容:POST mime type using curl
「注意:如果您想要POST圖像而不是指定url,那麼對方法的請求必須形成爲一個使用POST數據發送的MIME多部分消息,每個參數應該被指定爲一個獨立的表單數據塊。
我試過四處尋找例子,但還沒有找到任何,如果有人可以幫助新手出來它將不勝感激。
多部分消息實際上是標準POST ENCTYPE = 「多部分/格式數據」 請求。你可以用一個簡單的形式很簡單,生成它們,或者您可以使用捲曲(我懷疑你已經這樣做)如下:
curl_setopt($channel, CURLOPT_POSTFIELDS, array("myfile" => "@/path/to/my/image.png"));
捲曲會自動完成剩下的(轉換您的內容類型和mime-鍵入它)。
任何人現在都可以找到它,但無法使其工作,請查看https://stackoverflow.com/a/29122849/1166029 - 此方法自PHP 5.5起棄用 – samson 2017-07-05 19:21:01
此使用curl張貼值的例子結構,
$value1 = 'DATA 1;
$value2 = 'DATA 2';
$url = 'http://www.skybiometry.com/file/api/facedetection/example';
$fields = array(
'mimetype' => urlencode($value1),
'mimetype2' => urlencode($value2)
);
//url-ify the data for the POST
$fields_string = '';
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string, '&');
//open connection
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);
//execute post
$result = curl_exec($ch);
//close connection
curl_close($ch);
希望這可以幫助你。
我是在假設這隻能用PHP來完成,是否有可能在java中做到這一點? – user2266621 2013-04-10 16:23:50