我在服务器上有一个图像存储在一个文件中(不是db)。我想在Android的布局视图中显示这个图像。我正在使用网络API2和改造来交换数据。
使用改造,我知道我需要发送封装在类中的文件。我不知道要创造什么样的类型?(字节数组?)以及android方面的改造将如何转换这种类型。我试着在两个方面使用byte[],但是修改不能从Json中读取byte[]。
有人能指导我如何传输这个jpeg图像吗?谢谢!
发布于 2015-11-18 18:42:19
我最近实现了它。
这是我的api中的方法。
[HttpPost]
public IHttpActionResult Upload()
{
var httpRequest = HttpContext.Current.Request;
if (httpRequest.Files.Count > 0)
{
foreach (string file in httpRequest.Files)
{
var postedFile = httpRequest.Files[file];
// Do something with file.
}
else
{
// No files.
}
}您要寻找的类是retrofit的TypedFile类。这是我的实现。
RestAdapter restAdapter = new RestAdapter.Builder().setEndpoint("baseurl").build();
ApiTaqueria api = restAdapter.create(ApiTaqueria.class);
TypedFile foto = new TypedFile("multipart/form-data", new File("path"));
api.subirLogoTaqueria(foto, new Callback<Taqueria>() {
@Override
public void success(Taqueria result, Response response) {
// Do something.
}
@Override
public void failure(RetrofitError retrofitError) {
// Do something.
}
});在改造界面上。
@Multipart
@POST("/api/Photo/Upload")
public void subirLogoTaqueria(@Part("foto") TypedFile foto, Callback<Taqueria> callback);编码愉快。
https://stackoverflow.com/questions/33005647
复制相似问题