0
我需要編寫一個代碼,它可以上傳doc文件並以二進制或ASCII作爲API變量發送其內容。我可以想到兩種方法(1)上傳文件,然後讀取其內容並將數據發送到api(2)上傳文件,然後存儲其內容並訪問blob數據併發送到api。將上傳的文件轉換爲binary/ascii並作爲api變量發送
我想問問哪一個更好。現在我正在使用第二個選項。
現在我的問題是我能夠做上傳部分和存儲到數據庫部分作爲blob數據, ,但是當我使用mysql查詢訪問blob數據並將結果發送到API。 API說它不是二進制或ASCII。而當我回應查詢的結果顯示亂碼數據,所以我認爲它不是在二進制或ASCII。請告訴我如何將這個blob數據作爲Binary/ASCII傳遞給API。
<?php
$filename = "resume3.doc";
$handle = fopen($filename, "rb");
$contents = fread($handle, filesize($filename));
fclose($handle);
// URL of Form
$url = "http://rezscore.com/a/2901e8/grade";
//create the final string to be posted
$post_string = "resume=$contents";
//create cURL connection
$curl_connection = curl_init($url);
//set options
curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($curl_connection, CURLOPT_USERAGENT,"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, 1);
//set data to be posted
curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string);
//perform our request
$result = curl_exec($curl_connection);
print $result;
//close the connection
curl_close($curl_connection);
?>
該文件應該是一個簡歷,並且api返回簡歷的成績。 http://rezscore.com/
感謝
謝謝。 fread沒有解決這個問題,這就是爲什麼我切換到數據庫選項 – Vicky
** fread()**是二進制安全的並返回文件內容。也許下一次處理是不正確的。 – silex
請看看問題中的代碼。我沒有收到任何錯誤,但是不管簡歷如何,總是F(這不是簡歷) – Vicky