我有一个如下的图像上传api,它运行良好。
CURL --user username:password -X POST -H 'Content-Disposition: filename=scarlett-judinna.jpg' --data-binary @'/Volumes/Work/tmp/Dummy Images/image.jpg' http://example.com/wp-json/wp/v2/media
现在我想使用这个api从android上传图像。
我尝试了以下过程。
params.put("image", new ByteArrayInputStream(byte_arr));
AsyncHttpClient client = new AsyncHttpClient();
client.setBasicAuth(username, password);
client.addHeader("Content-Disposition", "filename=" + fileName);
client.addHeader("Content-Type", "image/" + extension);
client.post("http://example.com/wp-json/wp/v2/media",
params, new AsyncHttpResponseHandler() {
@Override
public void onSuccess(String response) {
prgDialog.hide();
Toast.makeText(getApplicationContext(), response,
Toast.LENGTH_LONG).show();
}
@Override
public void onFailure(int statusCode, Throwable error,
String content) {
Toast.makeText(getApplicationContext(), statusCode,Toast.LENGTH_LONG).show();
}
});
这总是适用于带有statusCode 403
的onFailure
方法
那么我做错了什么?
状态代码403表明该请求被禁止。也许您正在上传到服务器的文件夹没有写入权限。