我如何创建一个 mailTo link whos body contains a link containing escape values

How can I create a mailTo link whos body contains a link containing escape values

我有一个 api 需要格式:

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

看到 spaces\ 被转义为 %20%2f

当我创建一个 maitTo 时 link:

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 格式。

使用 encodeURIComponent 在 url 中传递值。

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