完整的 base 64 字符串不会更新为 json 请求
Actual json request is:
{
"obj":
{
"FarmerName":"abcd",
"IdAgent":"123",
"TPFileUpload":"_9j_4AAQSkZJRgABAQAAAQABAAD_2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFx..............",
"TPFileUploadType":"jpg"
}
}
But From code json request as follows:
{"obj":{"FarmerName":"","
IdAgent":"",
"TPFileUpload":"_9j_4AAQSkZJRgABAQAAAQABAAD_2wBDABALDA4MChAODQ4
Issues are:
1)json is not closed
2)base 64 string of image is not completely uploading to json request.
3)The parameter after "TPFileUpload" are not adding to json request because
of Base 64 encoded string of image.
Service Request as follows:
@Headers("Content-Type: application/json")
@POST("service/saveinput")
Call<SaveInputResponse> saveInput(@Body SaveInput saveinput);
saveInput pojo class:
public class SaveInput {
@SerializedName("obj")
@Expose
private Input obj;
public Input getObj() {
return obj;
}
public void setObj(Input obj) {
this.obj = obj;
}
}
Input class:
public class FooInput {
@SerializedName("FarmerName")
@Expose
private String farmerName;
@SerializedName("IdAgent")
@Expose
private String idAgent;
@SerializedName("TPFileUpload")
@Expose
private String tPFileUpload;
@SerializedName("TPFileUploadType")
@Expose
private String tPFileUploadType;
//Getters and setters of Variables...
}
我已经尝试使用改造库和凌空库的请求,但没有结果,您能否提供将 base64 字符串上传到 android 中的 json 请求的建议,有时"/"被"_"base64 字符串替换请求...
注意:base64编码字符串太大,即超过180行。
我也在使用这个。我添加我的代码。可能会对此有所帮助。
01.首先获取图像并将其转换为base64。
02. 采用 Json 格式的 http 请求。
[
{
"attachment": "Your base64 String",
"clients": {
"CLIENTS_ID": "18081000000120"
},
"projects": {
"PROJECT_ID": "18081000000306"
},
"userCode": "18011000000027"
}
]