繁体   English   中英

Play框架(Java)中没有HTTP上下文的绝对URL

[英]Absolute URLs in Play Framework (Java) with no HTTP context

在我们的(Java)Play应用程序中,我们有一个异步作业,当各种截止日期过去时,该作业会向用户发送电子邮件。 假定电子邮件包含指向我们网站上相关页面的链接。 但是,在这样的异步作业中,由于没有可用的HTTP上下文,因此无法使用routes.MyPage.myTemplate().absoluteURL()创建绝对URL。

在HTTP上下文之外获取绝对URL的推荐模式是什么? 对于测试,可以创建一个“伪” HTTP上下文 ,但是我觉得这不是生产中正确的方法吗?

play.mvc.Call有多个版本absoluteUrl 有如下版本:

/**
 * Transform this call to an absolute URL.
 *
 * @param secure true if the absolute URL should use HTTPS protocol instead of HTTP
 * @param host the absolute URL's domain
 * @return the absolute URL string
 */
public String absoluteURL(boolean secure, String host)

您可以使用它来生成绝对URL,而无需请求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM