2016-05-16 10 views
1

私はURLを渡そうとしていますhttp://localhost:3000/new/https://www.example.comrouter.get('/new/:url', function..)に変更しましたが、にURL(https://www.example.com)が表示される代わりに、このリンクhttp://localhost:3000/new/https://www.example.comは404 Not Foundエラーとなります。他のパラメータはうまく動作しますがhttp://localhost:3000/new/www.example.comrouter.get()メソッドでurlをパラメータとして渡すにはどうすればよいですか?

コード:

var router = express.Router(); 
router.get('/new/:url', function(req, res...); 

任意の助けをいただければ幸いです!あなたは、クエリのparamとして、通常のエンコードされていないURLを追加しようとすると

+1

あなたのURLコンポーネントをエンコードするのを忘れているようです。「http:// localhost:3000/new/https%3A%2F%2Fwww.example.com」 –

+0

@JuanMendes ..しかし、ユーザーは私のコードでそれを処理したのではなく、URLをエンコードしません。 –

+0

ユーザーはそのURLを直接入力していますか? –

答えて

1

、それは新しいパスにつながる

http://localhost:3000/new/https://www.example.comは、サーバーに渡すための

一つの方法として使用できない可能性があり、完全に新しいURLになりURLは、@Juanメンデスは仕事が周りにあり、 http://localhost:3000/new/https%3A%2F%2Fwww.example.com

しかし述べたようにエンコードする「/新/ *」のようなワイルドカードを使用することです。ブーム

+0

ありがとう!それは私のために働いた... –

関連する問題