java - 从远程服务器 Play Framework java 返回图像

标签 java playframework response mime-types

我尝试返回图像,如下所示:

返回 ok(新文件("http://example.com/dpa/client_name/images/client_log.jpg "));

但是 Controller 中的方法无法从远程服务器获取图像并抛出图像未找到异常。

如何使用 java play 框架从远程服务器检索图像并作为响应返回?

最佳答案

只需使用 WS API

package controllers;

import play.libs.ws.WSClient;
import play.mvc.Controller;
import play.mvc.Result;

import java.util.concurrent.CompletionStage;
import javax.inject.Inject;


public class HomeController extends Controller {

    @Inject WSClient ws;

    public CompletionStage<Result> index() {
        return ws
          .url("http://www.maine-coon-cat-nation.com/image-files/orange-maine-coon-cat.jpg")
          .get()
          .thenApply(file -> ok(file.getBodyAsStream()).as("image/jpeg"));
    }

}

关于java - 从远程服务器 Play Framework java 返回图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42068691/

相关文章:

java - 在鼠标单击或触摸时将 box2d 主体隐藏

c# - Response.End() 和 CompleteRequest()

asp.net - response.redirect 总是一个 http GET 响应吗?

javascript - Microsoft Edge 中流的新响应

Java 对 String 数组进行排序并返回不同的 Item

javascript - 将 Google Adwords 脚本添加到 Vaadin 应用程序中

java - 反转 GregorianCalendar 对象添加分钟方法

java - 在scala play框架中格式化字符串并用html元素替换%s

error-handling - 如何使用依赖注入(inject) Play Framework 2.4 处理 "Action not found"

java - 玩! 2.0 + Spring + MyBatis Java 示例