2016-01-05 30 views
0

我有一個以下圖像上傳api,它工作正常。從Android通過WP REST 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 

現在我想從android上傳圖片使用此api。

我試過以下過程。

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(); 
    } 
}); 

這始終轉到onFailurestatusCode 403

那我做錯了什麼?

回答

0

狀態碼403暗示請求被禁止。 也許您上傳到服務器的文件夾沒有寫入權限。

+0

但是,當我在網上使用相同的API來上傳圖片...並沒有這樣的問題。 – Sangharsha

+0

是用aAuth保護的api嗎? 你可以分享響應正文和消息... –

+0

是的,它有基本的身份驗證。但我已經定義了它......'client.setBasicAuth(username,password);' 迴應是: [{「data」:{「status」:403},「message」:「您沒有允許這樣做。「,」code「:」rest_forbidden「}] – Sangharsha