Естественно, загрузка файла - это HTTP POST
. Теперь давайте сначала напишем фрагмент кода Erlang, который делает <a href="https://github.com/cmullaparthi/ibrowse/wiki/ibrowse-API" rel="nofollow"><b>HTTP/1.1 POST with Ibrowse </b></a>
.
%% Assumes Ibrowse application is in Code path
ensure_ibrowse()->
case whereis(ibrowse) of
undefined -> ibrowse:start();
_ -> ok
end.<br>
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.
Оттуда, давайте сделаем нашу вещь Couch DB.
-define(Link,"http://localhost:5984/DBNAME/DOCID/Penguins?rev=LATEST_REVISION").<br>
%% 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.
Вот, пожалуйста! Все, что вам нужно сделать, это настроить ваш Macro Link
в соответствии с настройками вашего дивана DB, и вы готовы!