我正在尝试使用curl从我的android设备上传文件。该文件位于
/sdcard/Download/fileToUpload.txt
以下是我通过Terminal应用程序使用的命令:-
curl -i -X POST -H "Content-Type: multipart/form-data" \
-F "content=@/sdcard/Download/fileToUpload.txt" \
http://192.168.1.104/android/upload.php
我已经测试了从台式机正常运行的相同命令。 过去几个小时我都在head头。请让我知道怎么了。
PS:我担心这个问题在哪里会很愚蠢。
编辑:-我不想植根我的设备。因为这将是我的最后选择。
答案 0 :(得分:0)
Curl库已安装在您的桌面上,但这并不意味着您的android设备上已安装了相同的库(终端应用程序在您的设备上运行)。要在Android设备上安装curl库,您可能应该必须root设备,下载curl二进制文件并将其安装在设备上。您可以按照本指南了解如何:https://appuals.com/install-curl-openssl-android/
答案 1 :(得分:0)
您可以使用Retrofit(一个非常强大的Android库),提供有用的API通过http请求与服务器进行接口。
在特定情况下,您可以根据此模板在界面文件中使用多部分形式的数据
@Multipart
@POST("/android/upload.php")
Call<Void> sendFiles(
@Part MultipartBody.Part[] files
);
然后,您必须在您的特定代码中实例化改造:
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(endpoint)
.build();