开发者

Vanity URLs with Playframework

I would like to create Vanity URLs for web application built ontop of Playframework.

I have tried to add a parameter for index method in main page Application, this will work if i call http://localhost:9000/?vanity_url and not for http://localhost:9000/vanity_url.

How would i achieve this? I would like 开发者_高级运维users to create their own urls for the solution has to be dynamic, just like on Facebook


In the route you would put

GET /{<[a-z]+>fanPage}/? Page.showFanPage

With this one you could obtain:

http://localhost:9000/facebook

I also recommend using the slugify method provided by play framework, usually you would both check if the slug exists in the database, and look up for slug to grab the data (title of the fanpage/who's the owner of the fan page/how many views/etc etc)

In the tables:

Name: fanpage

pageID integer or bigint
title varchar
slug varchar unique
owner integer
content text

In code:

public static void showFanPage(String fanPage) {
    // use models to look for the slug
    // grab the data
    // do what you need to do
}

I'm going on examples here on how to create the urls since I don't know what app you are building:
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
}

(note this is just an example, I don't know what kind of application you are building) I hope this helps, let me know if this is what you meant

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜