2016-12-13 10 views
1

値のエスケープを含むリンクが含ま玉葉どのように私は、mailtoのリンクを作成することができます。体は、私はフォーマットを期待するAPIを持つ

/api/download/file%20name/file%2fpath

spaces\%20%2f

ようにエスケープされている参照を

maitToリンクを作成すると:

mailto:?subject=file%20name&body="example.com/api/download/file%20name/file%2fpath 

クライアント(私の要求はOutlookのみです)、これらの値はエスケープされた値をURLの真のスペースとスラッシュに置き換えて電子メールを作成するので、URLは無効になります。ボディ

としてこのexample.com/api/download/file name/file/path

終了までは、mailtoの異なった符号化することにより、これを防ぐために、とにかくありますか?私は現時点でapis形式を編集する方法はありません。

答えて

1

encodeURIComponentを使用すると、URLに値を渡すことができます。

var url = 'mailto:'+ 
    '?subject='+encodeURIComponent('file name')+ 
    '&body='+encodeURIComponent('example.com/api/download/file name/file/path') 
+0

賢い!それは私がURLをエンコードするのに使ったのと同じコマンドでした。私はそれらを2度エンコードしているので、動作していると思います。ありがとう –

関連する問題