我有一个需要以下格式的 api:
/api/download/file%20name/file%2fpath
看到空格
和\
被转义为%20
和%2f
当我创建 maitTo 链接时:
mailto:?subject=file%20name&body="example.com/api/download/file%20name/file%2fpath
客户端(我的要求仅是 Outlook)在创建电子邮件时会转义这些值,并用真正的空格和斜杠替换网址中的转义值,从而使网址无效。
最终以这个 example.com/api/download/file name/file/path
作为正文
有没有办法通过对 mailto 进行不同的编码来防止这种情况发生?我目前无法编辑 api 格式。
最佳答案
使用encodeURIComponent
在 url 中传递值。
var url = 'mailto:'+
'?subject='+encodeURIComponent('file name')+
'&body='+encodeURIComponent('example.com/api/download/file name/file/path')
关于javascript - 如何创建一个 mailTo 链接,其正文包含包含转义值的链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41129883/