gpt4 book ai didi

playframework - 如何制作一个让你从 https 返回到 http 的链接?

转载 作者:行者123 更新时间:2023-12-04 07:39:57 24 4
gpt4 key购买 nike

我的页面(第 1 页)上有此链接:

<a href="@{Controller.action1().secure()}">Link1</a> 

通过 https 将我带到页面(第 2 页)。如何在 page2 上创建一个链接,让我从 https 返回到 http?我认为@@ 符号可以解决问题:
<a href="@@{Controller.action2()}">Link2</a>

但事实并非如此,action2 也会通过 https 调用。

最佳答案

Play 没有与 secure() 相反的方法,但您可以使用自定义 JavaExtension 自己实现它:

import play.templates.JavaExtensions;
import play.mvc.Router.ActionDefinition;

public class MyExtensions extends play.templates.JavaExtensions {

public static String unsecure(ActionDefinition action) {
if (!action.url.contains("http://") && !action.url.contains("https://")) {
action.absolute();
}
action.url = action.url.replace("https:", "http:");
return action.url;
}

自定义扩展方法应返回 String ,参数将保存增强对象, as the documentation suggests .代码几乎与 secure method's code 相同.

使用此方法,您现在可以使用:
href="@{Controller.action2().unsecure()}"

关于playframework - 如何制作一个让你从 https 返回到 http 的链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9459003/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com