我已经尝试了两天,现在了解如何复制一个curl请求,以添加一个图像到我的Craftar图像识别集合。我能够创建一个项目,但设置多部分数据代码的方法让我失败了。Craftar只提供如何发布图像文件以将其附加到集合项的cURL语句。
我尝试使用RequestB.in和Postman来查看在消息传输中可以看到的内容,但是okHTTP方法的组合似乎无法解决这个问题。我被难倒了。我尝试了“image/png”和“application/octet-stream”作为我的媒体类型。当我使用Postman发送测试请求时,RequestB.in显示了“application/octet-stream”。下面是它显示的消息信息。
下面是我试图用Java复制的cURL语句。
curl-x POST'https://my.craftar.net/api/v0/image/api_key=123456789abcdefghijk123456789abcdefghijk'-f“item=/api/v0/item/d05924dde1784787a3d6b815e2b1cd69/”-f“file=@back_cover.jpg”
下面是我的代码:
public class OkHttpHandler extends AsyncTask<String, Void, String> {
OkHttpClient client = new OkHttpClient();
@Override
protected String doInBackground(String... params) {
File storageDir = Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PICTURES);
File file = new File("/storage/emulated/0/Pictures/BlissBotSenderImages/kaytiandkristoffer.jpg");
RequestBody requestBody = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("item", "/api/v0/item/d05924dde1784787a3d6b815e2b1cd69/")
.addFormDataPart("file","kaytiandkristoffer.jpg",
(RequestBody.create (MEDIA_TYPE_PNG, file)))
.build();
Request request = new Request.Builder()
.url(postImageUrl)
.post(requestBody)
.build();
try {
Response response = client.newCall(request).execute();
return response.body().string();
} catch (Exception e) {
e.printStackTrace();
}
以下是从邮递员成功发送邮件的请求b.详细信息:
表单/后置参数项目:/API/V0/ITEM/D05924DDE1784787A3D6B815E2B1CD69//
内容长度:3509853
总路由时间:0
CF-Connection-IP:2001:5B0:42C4:2AE8:2954:59EA:A3E8:4787
X-Request-ID:766063F7-C368-4467-B5ED-42776AC6F528
主机:requestB.in
连接:关闭
↓↓↓↓↓exifii*
δ'(1±2'nsamsungsph-l720thhl720tvpubng52015:04:05 21:22:25\d“'20220l
️bé0100 p···!üd2015:04:05 21:22:252015:04:0521:22:25äd2äd·dasciinvmu^^;ygzhxgmgum{wsx∞¾2è2å∞¾s∞¾∞¾s∞¾uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuunc-/=e7ad35iecli:p[abdvabvtizz:@hhg[eh[lz8rlln<8a=fd“gonlnztngbqqpgr_∞¾¾¾¾®fè\\)q5èèéééμ×2\j+'#️️%:pf}-®}-®。^2@e×\\'%('%$.!!$$#&*@∞®”AIEIGNRNAAD59<-4':ZD/#.BA8$$$@8JG\QGZ~{qmcy[\~rhttcio
xtne^y{{r~vmxrrswu{gw{iqs~ozgvyxxffwnyyzkwwyvt{s}wz{zw~vvxsjquxykdv}jtp{}{ryy~vv}tqx{pgjsolzq~ftxrkug{sjqnw]kwlq}mssij~rzn}wu{jjjsolzq~ftxrkug{sjqnw!BB13-
(60,!%6h@eleb@6%kvj@t;04OFC4-'#$*71。;^m@ivtmf@l>dkl,:ke7<%$?mxiu®crzs/y7z/dds_wvrgt^
vgpb^gtorn4%lo pécé'\\qg?noa\rl\t
n;xl“e5f=h=aslojtwd\dclsvxsnxxwycg7b-xtk:cabfgfiitnw/$5)e28512*1$1g@8/bc3,4'<,12='/+-3%2,A()')&.+'6.&C?),1@/52$-%8;93(-+),#.=+%**+'6$51(@'k/,#!%+!(”#&$,+($)!%88!。-0&&$'!#+'&$(5/,);--0,2!+&0/(&)$+<&(#$'+/&'#9*#$&$'%$$!!#&/0*($$('!$&'#.1&)
正如有时发生的那样,问题出在别处。在这一行的某个地方,我意外地在endpoint地址中插入了一个无关的字符。我修复了这一点,上面的代码工作只是查找。
我刚刚安装了NetBeans 7.3.1。我只是试图创建一个新的Java应用程序,但每当我通过向导时,它会显示“Project folder exists and is not Empty”(项目文件夹存在且不是空的),不会再继续了。这是一个新项目,所以在NetBeans创建文件夹之前,文件夹是不存在的。 有什么想法吗?
所以,在我的开发Mac上使用我的rails应用程序创建了一个正常工作的postgres db实例,但是随着我从头开始构建模型(即添加、删除、更改列),迁移变得难以管理,所以我决定开始清理。运行rake db: dro后,我无法通过rake db: create重新创建。我只得到以下信息: 无法为 {“适配器”= 创建数据库 我想我需要在postgres中创建用户,但是它不应该从初始设置就存在吗?
问题内容: 我开始开发适用于Google Android的应用程序,并严重依赖可以通过json或xml轻松传输数据的Web API。我现在必须决定选择哪个库。 我看到google在API中包含org.json类,但尚未对其进行测试。 您的经历如何?我应该使用哪个库/ API,为什么? 问题答案: 如果您主要针对的是内部API,该内部API只是您控制的服务器和所创建的客户端之间的链接,那么我强烈建议
我安装了JavaNetBeansIDE12.0和JDk-16。当我尝试使用Java和Ant创建一个项目时,它会像截图中那样被卡住。当我取消它时,它会创建文件,但其中没有代码,即没有创建main方法。只是一个空白文件。 有人知道如何解决这个问题吗?
我无法在我的应用程序中使用proguard。当我将minify启用为true时,布局屏幕中的textinputlayout工作正常,但我有一个alertdialog,其中包含一个膨胀的XML,该XML没有膨胀(该XML包含一个textinputlayout。请帮助大家。这是代码片段。 PS:我正在使用手机应用程序发帖,请不要抨击对齐不当。我真的需要帮助。 建筑渐变条目-- XML屏幕中的TextI
问题内容: 嗨伙计, 如何在Eclipse中创建我的应用程序的exe文件?请提及要遵循的步骤。 谢谢 问题答案: 如果您只是想知道如何在Eclipse IDE外部运行应用程序,则不需要exe。在菜单中寻找“导出JAR”选项。 如果导出正确完成(生成了MANIFEST),则应该能够通过双击JAR文件或从命令行使用“ java -jar FILENAME.jar”来运行JAR文件。请注意,这是与平台无