gpt4 book ai didi

erlang - 如何使用 ibrowse 将附件上传到 CouchDB 中的文档?

转载 作者:行者123 更新时间:2023-12-02 05:20:28 24 4
gpt4 key购买 nike

我使用curl上传图片文件Penguins.jpg 。例如:
C:\curl>curl -vX PUT -H "Content-Type: image/jpeg" <a href="http://localhost:5984/DBNAME/DOCID/Penguins?rev=LATEST_REVISION" rel="noreferrer noopener nofollow">http://localhost:5984/DBNAME/DOCID/Penguins?rev=LATEST_REVISION</a> --data-binary @Penguins.jpg

它成功了......

那么,如何使用 ibrowse 实现相同的效果? =================================

最佳答案

当然,文件上传是 HTTP POST 。现在让我们首先编写一段 Erlang 代码,它的作用是 <a href="https://github.com/cmullaparthi/ibrowse/wiki/ibrowse-API" rel="noreferrer noopener nofollow"><b>HTTP/1.1 POST with Ibrowse </b></a>

%% Assumes Ibrowse application is in Code pathensure_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.

从这里开始,我们开始做 Couch DB 的事情。

-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适合您的沙发数据库设置,然后就可以开始了!

关于erlang - 如何使用 ibrowse 将附件上传到 CouchDB 中的文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8167534/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com