正在将错误信息上传至服务器,android - 将Base64编码的图像上传到服务器-400服务器错误 - 堆栈内存溢出...

我正在使用Volley将具有JSON负载的Base64编码图像上传到HelpScout服务器 。 返回com.android.volley.ServerError和状态代码400 。 我将图像编码如下:

var imageEncoded = ""

try {

val bitmap = MediaStore.Images.Media.getBitmap(context?.contentResolver, uri)

//val bitmap = BitmapFactory.decodeFile(path)

val stream = ByteArrayOutputStream()

bitmap.compress(Bitmap.CompressFormat.JPEG, 70, stream)

val imageBytes = stream.toByteArray()

imageEncoded = Base64.encodeToString(imageBytes, Base64.DEFAULT)

} catch (e: Exception) {

e.printStackTrace()

}

我已经检查了几个问题,但没有运气。 以下是我正在使用的Volley方法:

public static void volleyRowJsonPostRequest(Context context,String url, JSONObject object,final Map headers, final VolleyTaskListener taskListener) {

final JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.POST, url, object,

new Response.Listener() {

@Override

public void onResponse(JSONObject response) {

try {

taskListener.onTaskComplete(response.toString());

} catch (Exception e) {

e.printStackTrace();

}

}

},

new Response.ErrorListener() {

@Override

public void onErrorResponse(VolleyError error) {

NetworkResponse networkResponse = error.networkResponse;

if (networkResponse != null)

taskListener.onTaskFailed(networkResponse.statusCode);

}

}

){

@Override

public Map getHeaders() throws AuthFailureError {

return headers;

}

};

jsObjRequest.setRetryPolicy(new DefaultRetryPolicy(

60000,

DefaultRetryPolicy.DEFAULT_MAX_RETRIES,

DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

jsObjRequest.setShouldCache(false);

Volley.newRequestQueue(context).add(jsObjRequest);

}

和JSONObject是:

{

"subject": "some test value",

"mailboxId": 170715,

"type": "email",

"status": "active",

"customer": {

"email": "mymailaddress@mail.com"

},

"threads": [

{

"type": "customer",

"text": "some test value",

"customer": {

"email": "mymailaddress@mail.com"

},

"attachments": [

{

"fileName": "Screenshot_20181005-160109.png",

"mimeType": "image\/png",

"data": "base64 encoded string goes here"

}

]

}

],

"tags": [

"Swytch",

"Help"

]

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值