2017-11-13 3 views
1

私が電子メールでユーザーに送信するURLを生成しているangular2プロジェクトに問題があります。"="がangular2のURLで切り詰められる

:メールのURLが、ルータに渡される特別なIDが含まれている必要があり、{パス:somepath /:ID}

ユーザは次にされるURLをクリックした:

http://localhost/somepath/ {ID}

私の問題は、IDは、私は目をコードする試みた自動的にURLにナビゲートするときにトリミング(従ってIDは、現在誤っ製造)を取得し、末尾「=」文字

を含むことができることですURLを作るのURLに追加する前に、電子番号:

http://localhost/somepath/XXX%3D

が、エンコードされた "="(%3D)はまだオフにトリミングされます。

エンコードされたURLの値がまだトリミングされていない理由はありますか?これを防ぐ方法はありますか?

+0

その他のオプションはありますか?通常、URLにいくつかのトークンを渡す必要がある場合、queryParamsを使用して 'http:// localhost/somepath?id = ... 'のように渡す方が良いでしょう。 –

+0

これは失敗しません。この[Plunker](https: /plnkr.co/edit/yXzWSbVggF4QtFRREk0B?p=preview)、これを更新して問題を再現できますか? –

答えて

0

[OK]を、私は実際のidはシンボルが含まれており、通常は「=」で終わるランダムな暗号生成器によってマスクされていた私の部分にだけ大規模な監督....

ました。私が気づいていなかったのは、2つのケースにも含まれていた ")"があったということでした。エンコードされず、URLを読み込むときにすべてのものがトリミングされていました。

")"はエンコードされない別のシンボルで置き換えられますが、Angular2(この場合は "*")で別の機能を持たないもので置き換えられます。

関連する問題