我想为建立在Playframework 之上的 Web 应用程序创建Vanity URL。
我试图index
在主页中为方法添加一个参数,Application
如果我调用http://localhost:9000/?vanity_url
而不是 for ,这将起作用http://localhost:9000/vanity_url
。
我将如何实现这一目标?我希望用户创建自己的 url,因为解决方案必须是动态的,就像 onFacebook
我想为建立在Playframework 之上的 Web 应用程序创建Vanity URL。
我试图index
在主页中为方法添加一个参数,Application
如果我调用http://localhost:9000/?vanity_url
而不是 for ,这将起作用http://localhost:9000/vanity_url
。
我将如何实现这一目标?我希望用户创建自己的 url,因为解决方案必须是动态的,就像 onFacebook
在您要放置的路线中
GET /{<[a-z]+>fanPage}/? Page.showFanPage
有了这个,您可以获得:
http://localhost:9000/facebook
我也推荐使用slugify
play框架提供的方法,通常你会检查slug是否存在于数据库中,并查找slug获取数据(粉丝页面的标题/粉丝页面的所有者是谁/有多少浏览量/等等)
在表格中:
名称:粉丝专页
pageID 整数或 bigint
标题 varchar
slug varchar 唯一
所有者 整数
内容 文本
在代码中:
public static void showFanPage(String fanPage) {
// use models to look for the slug
// grab the data
// do what you need to do
}
我将在这里举例说明如何创建网址,因为我不知道您正在构建什么应用程序:
GET /post/slug/? Page.createPage
POST /post/slug/? Page.processPage
public static void createPage() {
// remember to create the template
render();
}
public static void processPage(String slugName) {
// slugName refers to the input field
// check if the slug exists and throw error if it does
// process
}
(注意这只是一个例子,我不知道你正在构建什么样的应用程序)我希望这会有所帮助,如果这就是你的意思,请告诉我