使用rest API上传小照片以定位数据库

时间:2014-01-17 10:52:45

标签: android json orientdb

我有关于orient数据库的下表

create class person extends V
create property person.image Binary
create property person.name string

我正在使用http / REST将图像上传到orient db

http://:2480 / document /是网址

我曾尝试过以下方式

1)使用android 4中提供的库将图像编码为base64,并创建一个包含此base64数据的json,并尝试将其发布到其余服务器, 我收到以下错误消息

  

com.orientechnologies.orient.core.exception.OSerializationException:   解组记录#-1的JSON内容时出错:-1

     

- > com.orientechnologies.common.io.OIOException:数组位置0的Bad Base64输入字符小数63

我尝试使用apache Code将相同的图像编码为base64,仍然是类似的错误消息。

我也尝试了以下内容 byte [] base64 = Base64.encode(image,Base64.DEFAULT); String str = new String(base64) 并在json创建中使用了这个str并发送了json,但没有成功。

我还尝试将二进制文件放在_ + str + _中,如下面的链接所示 https://code.google.com/p/orient/wiki/Types 但没有成功。

任何人都可以帮我发布图像数据。

我可以使用OrientDB rest服务器发布和放置其他数据类型。

先谢谢 此致

1 个答案:

答案 0 :(得分:-1)

为了将图像(BLOB)上传到OrientDB,OrientDB似乎在REST上支持一些上传命令。它尚未被记录,因此除了尝试运气之外什么也做不了。希望OrientDB人员能够尽快记录命令及其用法。

检查 - https://groups.google.com/forum/#!topic/orient-database/ahrCcp33udA

==========

<强> [UPDATE]

HTTP REST命令是uploadSingleFile,可以按如下方式使用:

http:// {host server}:2480 / uploadSingleFile / {database}

这是一个POST调用,文件作为有效负载发送。尝试探索OrientDB Studio如何尝试将图像上传到服务器。 OrientDB Studio也是一个在BootStrap + AngularJS + OrientDB中开发的Web应用程序,因此是一个很好的理解起点。在OrientDB Studio中,您可以选择在编辑记录时上载图像。不幸的是,在我的最后,即使是Studio图像上传功能也会出现与您在案例中看到的相同的异常错误。