2016-10-25 1 views
0

ここで私が何をしようとしているのかが明確になるように説明します。私は、Express.jsとNode.jsを使ってWebアプリケーションを作成しています。この時点でユーザープロファイルを作成しようとしています。私はいくつかのウェブサイトが行くようにユーザープロファイルをレンダリングする別の方法を見てきました:Quora:https://www.quora.com/profile/ ************、Stackoverflow:https://stackoverflow.com/users/4056534/sandip-subediとFacebook /多くの他のwww.facebook.com/username。NodeJSでユーザーのプロファイルの取得メソッドを処理する方法は?

私はFacebookがやっているようなものを作りたいと思っています。 www.MYURL.com/USERNAME。どのように達成するのですか?私はGET要求とPOST要求を処理する方法を知っています。私はすでに40以上のGET/POSTリクエストに異なるURL名を付けているので、ここでは問題があります。それらのすべてがwww.MYURL.com/DOSOMETHINGから来ているので、それがユーザーのプロフィールまたは他のURLであればフィルタリングする正しい方法を理解できませんでした。もし私がwww.MYURL.com/user/USERNAMEのようなことをしていたのなら、私はすでにこの時点でユーザーを扱っていることを知っているので簡単になるでしょう。

答えて

1

あなたは、名前空間のエンドポイントにルーターを作成することができます。

let router = express.Router() 
router.get("/:username", (req, res, next) => { 
    // req.params will have the URL's username parameter 
    console.log("Request for user with username", req.params.username) 
}) 
app.use("/user", router) 

これはuserルート上usernameルートマウント:彼らは私にいくつかのリンクをクリックしたとき働くかもしれない/user/[username]

https://expressjs.com/en/guide/routing.html

+0

をウェブサイトWebブラウザにwww.MYURL.com/sandipsubediと直接入力するとどうなりますか?それはrouter.get( "/ sandipsubedi")かそのようなものになります。それらのインスタンスで私は何をしますか? –

+0

アプリケーションでは、何らかの形でユーザー入力を解釈する必要があります。データベースに格納されているユーザーだけでなく、コミュニティなど他の種類のデータも格納されている可能性があります。 URLに入力されたものがデータ内のものと一致するかどうかを確認し、正しい場所を指しているかどうかを確認できます。私はそれが多くの形を取る可能性があるので、その実装については推測しません。 – carebdayrvis

関連する問題