स्वाभाविक रूप से, एक फ़ाइल अपलोड HTTP POST
है। अब पहले एरलांग कोड का टुकड़ा लिखें जो HTTP/1.1 POST with Ibrowse
करता है।
%% Assumes Ibrowse application is in Code path
ensure_ibrowse()->
case whereis(ibrowse) of
undefined -> ibrowse:start();
_ -> ok
end.
post(Link,Data,Headers)->
ensure_ibrowse(),
try ibrowse:send_req(Link,Headers,post,Data) of
{ _, _, _,Result} ->
io:format("\n\tFile Uploaded. Return: ~p~n",[Result]);
EE -> {error,EE}
catch
XX:XX2 -> {error,XX,XX2}
end.
वहां से, हमारी सोफे डीबी चीज करते हैं।
-define(Link,"http://localhost:5984/DBNAME/DOCID/Penguins?rev=LATEST_REVISION").
%% File_path must be a valid file !
upload_file(Full_file_path)->
case file:read_file(Full_file_path) of
{ok,Binary} ->
post(?Link,Binary,[{"Content-Type","image/jpeg"}]);
Error -> Error
end.
वहां आप जाते हैं! आपको बस अपने सोफे डीबी सेटिंग्स फिट करने के लिए अपने मैक्रो Link
को कस्टमाइज़ करना है और आप जाने के लिए अच्छे हैं!
स्रोत
2011-11-17 14:04:14
यदि फ़ाइल बड़ी है, तो इसे भाग में भेजने की आवश्यकता हो सकती है, जिसमें हेडर में कुछ ऐसा शामिल होगा: '{" सामग्री-प्रकार "," मल्टीपार्ट/फॉर्म-डेटा "}' –